! function () {
  function c(i) {
    var o = Object.create(null);
    return function (e) {
      var n = f(e) ? e : JSON.stringify(e);
      return o[n] || (o[n] = i(e))
    }
  }
  var a = c(function (e) {
      return e.replace(/([A-Z])/g, function (e) {
        return "-" + e.toLowerCase()
      })
    }),
    u = Object.prototype.hasOwnProperty,
    m = Object.assign || function (e) {
      for (var n = arguments, i = 1; i < arguments.length; i++) {
        var o, t = Object(n[i]);
        for (o in t) u.call(t, o) && (e[o] = t[o])
      }
      return e
    };

  function f(e) {
    return "string" == typeof e || "number" == typeof e
  }

  function d() {}

  function o(e) {
    return "function" == typeof e
  }

  function g(e) {
    var n = e.match(/^([^:/?#]+:)?(?:\/{2,}([^/?#]*))?([^?#]+)?(\?[^#]*)?(#.*)?/);
    return "string" == typeof n[1] && 0 < n[1].length && n[1].toLowerCase() !== location.protocol || ("string" == typeof n[2] && 0 < n[2].length && n[2].replace(new RegExp(":(" + {
      "http:": 80,
      "https:": 443
    } [location.protocol] + ")?$"), "") !== location.host || !!/^\/\\/.test(e))
  }
  var s = document.body.clientWidth <= 600,
    t = window.history && window.history.pushState && window.history.replaceState && !navigator.userAgent.match(/((iPod|iPhone|iPad).+\bOS\s+[1-4]\D|WebApps\/.+CFNetwork)/),
    i = {};

  function l(e, n) {
    if (void 0 === n && (n = !1), "string" == typeof e) {
      if (void 0 !== window.Vue) return b(e);
      e = n ? b(e) : i[e] || (i[e] = b(e))
    }
    return e
  }
  var v = document,
    h = v.body,
    _ = v.head;

  function b(e, n) {
    return n ? e.querySelector(n) : v.querySelector(e)
  }

  function k(e, n) {
    return [].slice.call(n ? e.querySelectorAll(n) : v.querySelectorAll(e))
  }

  function w(e, n) {
    return e = v.createElement(e), n && (e.innerHTML = n), e
  }

  function r(e, n) {
    return e.appendChild(n)
  }

  function y(e, n) {
    return e.insertBefore(n, e.children[0])
  }

  function p(e, n, i) {
    o(n) ? window.addEventListener(e, n) : e.addEventListener(n, i)
  }

  function x(e, n, i) {
    o(n) ? window.removeEventListener(e, n) : e.removeEventListener(n, i)
  }

  function S(e, n, i) {
    e && e.classList[i ? n : "toggle"](i || n)
  }

  function e(e, n) {
    var i = (n = void 0 === n ? document : n).readyState;
    if ("complete" === i || "interactive" === i) return setTimeout(e, 0);
    n.addEventListener("DOMContentLoaded", e)
  }
  var n = Object.freeze({
    __proto__: null,
    getNode: l,
    $: v,
    body: h,
    head: _,
    find: b,
    findAll: k,
    create: w,
    appendTo: r,
    before: y,
    on: p,
    off: x,
    toggleClass: S,
    style: function (e) {
      r(_, w("style", e))
    },
    documentReady: e
  });

  function A(e, n) {
    return -1 !== e.indexOf(n, e.length - n.length)
  }
  var $ = decodeURIComponent,
    z = encodeURIComponent;

  function F(e) {
    var n = {};
    return (e = e.trim().replace(/^(\?|#|&)/, "")) && e.split("&").forEach(function (e) {
      e = e.replace(/\+/g, " ").split("=");
      n[e[0]] = e[1] && $(e[1])
    }), n
  }

  function E(e, n) {
    void 0 === n && (n = []);
    var i, o = [];
    for (i in e) - 1 < n.indexOf(i) || o.push(e[i] ? (z(i) + "=" + z(e[i])).toLowerCase() : z(i));
    return o.length ? "?" + o.join("&") : ""
  }
  var R = c(function (e) {
      return /(:|(\/{2}))/g.test(e)
    }),
    T = c(function (e) {
      return e.split(/[?#]/)[0]
    }),
    C = c(function (e) {
      if (/\/$/g.test(e)) return e;
      e = e.match(/(\S*\/)[^/]+$/);
      return e ? e[1] : ""
    }),
    j = c(function (e) {
      return e.replace(/^\/+/, "/").replace(/([^:])\/{2,}/g, "$1/")
    }),
    L = c(function (e) {
      for (var n = e.replace(/^\//, "").split("/"), i = [], o = 0, t = n.length; o < t; o++) {
        var a = n[o];
        ".." === a ? i.pop() : "." !== a && i.push(a)
      }
      return "/" + i.join("/")
    });

  function O(e) {
    return e.split("/").filter(function (e) {
      return -1 === e.indexOf("#")
    }).join("/")
  }

  function q() {
    for (var e = [], n = arguments.length; n--;) e[n] = arguments[n];
    return j(e.map(O).join("/"))
  }
  var P = c(function (e) {
      return e.replace("#", "?id=")
    }),
    M = {};

  function I(e) {
    this.config = e
  }

  function N(e) {
    var n = location.href.indexOf("#");
    location.replace(location.href.slice(0, 0 <= n ? n : 0) + "#" + e)
  }
  I.prototype.getBasePath = function () {
    return this.config.basePath
  }, I.prototype.getFile = function (e, n) {
    void 0 === e && (e = this.getCurrentPath());
    var i, o, t = this.config,
      a = this.getBasePath(),
      r = "string" == typeof t.ext ? t.ext : ".md";
    return e = t.alias ? function e(n, i, o) {
      var t = Object.keys(i).filter(function (e) {
        return (M[e] || (M[e] = new RegExp("^" + e + "$"))).test(n) && n !== o
      })[0];
      return t ? e(n.replace(M[t], i[t]), i, n) : n
    }(e, t.alias) : e, i = e, o = r, e = (e = new RegExp("\\.(" + o.replace(/^\./, "") + "|html)$", "g").test(i) ? i : /\/$/g.test(i) ? i + "README" + o : "" + i + o) === "/README" + r && t.homepage || e, e = R(e) ? e : q(a, e), e = n ? e.replace(new RegExp("^" + a), "") : e
  }, I.prototype.onchange = function (e) {
    (e = void 0 === e ? d : e)()
  }, I.prototype.getCurrentPath = function () {}, I.prototype.normalize = function () {}, I.prototype.parse = function () {}, I.prototype.toURL = function (e, n, i) {
    var o = i && "#" === e[0],
      t = this.parse(P(e));
    if (t.query = m({}, t.query, n), e = (e = t.path + E(t.query)).replace(/\.md(\?)|\.md$/, "$1"), o && (e = (0 < (o = i.indexOf("?")) ? i.substring(0, o) : i) + e), this.config.relativePath && 0 !== e.indexOf("/")) {
      i = i.substring(0, i.lastIndexOf("/") + 1);
      return j(L(i + e))
    }
    return j("/" + e)
  };
  var H = function (o) {
      function e(e) {
        o.call(this, e), this.mode = "hash"
      }
      return o && (e.__proto__ = o), ((e.prototype = Object.create(o && o.prototype)).constructor = e).prototype.getBasePath = function () {
        var e = window.location.pathname || "",
          n = this.config.basePath,
          e = A(e, ".html") ? e + "#/" + n : e + "/" + n;
        return /^(\/|https?:)/g.test(n) ? n : j(e)
      }, e.prototype.getCurrentPath = function () {
        var e = location.href,
          n = e.indexOf("#");
        return -1 === n ? "" : e.slice(n + 1)
      }, e.prototype.onchange = function (i) {
        void 0 === i && (i = d);
        var o = !1;
        p("click", function (e) {
          e = "A" === e.target.tagName ? e.target : e.target.parentNode;
          e && "A" === e.tagName && !g(e.href) && (o = !0)
        }), p("hashchange", function (e) {
          var n = o ? "navigate" : "history";
          o = !1, i({
            event: e,
            source: n
          })
        })
      }, e.prototype.normalize = function () {
        var e = this.getCurrentPath();
        if ("/" === (e = P(e)).charAt(0)) return N(e);
        N("/" + e)
      }, e.prototype.parse = function (e) {
        var n = "",
          i = (e = void 0 === e ? location.href : e).indexOf("#"),
          i = (e = 0 <= i ? e.slice(i + 1) : e).indexOf("?");
        return 0 <= i && (n = e.slice(i + 1), e = e.slice(0, i)), {
          path: e,
          file: this.getFile(e, !0),
          query: F(n)
        }
      }, e.prototype.toURL = function (e, n, i) {
        return "#" + o.prototype.toURL.call(this, e, n, i)
      }, e
    }(I),
    D = function (n) {
      function e(e) {
        n.call(this, e), this.mode = "history"
      }
      return n && (e.__proto__ = n), ((e.prototype = Object.create(n && n.prototype)).constructor = e).prototype.getCurrentPath = function () {
        var e = this.getBasePath(),
          n = window.location.pathname;
        return ((n = e && 0 === n.indexOf(e) ? n.slice(e.length) : n) || "/") + window.location.search + window.location.hash
      }, e.prototype.onchange = function (i) {
        void 0 === i && (i = d), p("click", function (e) {
          var n = "A" === e.target.tagName ? e.target : e.target.parentNode;
          n && "A" === n.tagName && !g(n.href) && (e.preventDefault(), n = n.href, window.history.pushState({
            key: n
          }, "", n), i({
            event: e,
            source: "navigate"
          }))
        }), p("popstate", function (e) {
          i({
            event: e,
            source: "history"
          })
        })
      }, e.prototype.parse = function (e) {
        var n = "",
          i = (e = void 0 === e ? location.href : e).indexOf("?");
        0 <= i && (n = e.slice(i + 1), e = e.slice(0, i));
        var o = q(location.origin),
          i = e.indexOf(o);
        return {
          path: e = -1 < i ? e.slice(i + o.length) : e,
          file: this.getFile(e),
          query: F(n)
        }
      }, e
    }(I),
    U = {};
  var Z, B, V = /([^{]*?)\w(?=\})/g,
    Y = {
      YYYY: "getFullYear",
      YY: "getYear",
      MM: function (e) {
        return e.getMonth() + 1
      },
      DD: "getDate",
      HH: "getHours",
      mm: "getMinutes",
      ss: "getSeconds",
      fff: "getMilliseconds"
    };

  function G(e) {
    var n, i = e.loaded,
      o = e.total,
      t = e.step;
    Z || ((e = w("div")).classList.add("progress"), r(h, e), Z = e), n = t ? 80 < (n = parseInt(Z.style.width || 0, 10) + t) ? 80 : n : Math.floor(i / o * 100), Z.style.opacity = 1, Z.style.width = 95 <= n ? "100%" : n + "%", 95 <= n && (clearTimeout(B), B = setTimeout(function (e) {
      Z.style.opacity = 0, Z.style.width = "0%"
    }, 200))
  }
  var W = {};

  function X(t, e, n) {
    void 0 === e && (e = !1), void 0 === n && (n = {});

    function a() {
      r.addEventListener.apply(r, arguments)
    }
    var i, r = new XMLHttpRequest,
      o = W[t];
    if (o) return {
      then: function (e) {
        return e(o.content, o.opt)
      },
      abort: d
    };
    for (i in r.open("GET", t), n) u.call(n, i) && r.setRequestHeader(i, n[i]);
    return r.send(), {
      then: function (n, i) {
        var o;
        void 0 === i && (i = d), e && (o = setInterval(function (e) {
          return G({
            step: Math.floor(5 * Math.random() + 1)
          })
        }, 500), a("progress", G), a("loadend", function (e) {
          G(e), clearInterval(o)
        })), a("error", i), a("load", function (e) {
          var e = e.target;
          400 <= e.status ? i(e) : (e = W[t] = {
            content: e.response,
            opt: {
              updatedAt: r.getResponseHeader("last-modified")
            }
          }, n(e.content, e.opt))
        })
      },
      abort: function (e) {
        return 4 !== r.readyState && r.abort()
      }
    }
  }

  function Q(e, n) {
    e.innerHTML = e.innerHTML.replace(/var\(\s*--theme-color.*?\)/g, n)
  }
  var J = v.title;

  function K() {
    var e, n = l("section.cover");
    n && (e = n.getBoundingClientRect().height, window.pageYOffset >= e || n.classList.contains("hidden") ? S(h, "add", "sticky") : S(h, "remove", "sticky"))
  }

  function ee(e, n, o, i) {
    var t = [];
    null != (n = l(n)) && (t = k(n, "a"));
    var a, r = decodeURI(e.toURL(e.getCurrentPath()));
    return t.sort(function (e, n) {
      return n.href.length - e.href.length
    }).forEach(function (e) {
      var n = decodeURI(e.getAttribute("href")),
        i = o ? e.parentNode : e;
      e.title = e.title || e.innerText, 0 !== r.indexOf(n) || a ? S(i, "remove", "active") : (a = e, S(i, "add", "active"))
    }), i && (v.title = a ? a.title || a.innerText + " - " + J : J), a
  }

  function ne(e, n) {
    for (var i = 0; i < n.length; i++) {
      var o = n[i];
      o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, o.key, o)
    }
  }
  var ie = (function (e, n, i) {
    return n && ne(e.prototype, n), i && ne(e, i), e
  }(oe, [{
    key: "getIntermediateValue",
    value: function (e) {
      return this.decimal ? e : Math.round(e)
    }
  }, {
    key: "getFinalValue",
    value: function () {
      return this.end
    }
  }]), oe);

  function oe() {
    var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {};
    ! function (e, n) {
      if (!(e instanceof n)) throw new TypeError("Cannot call a class as a function")
    }(this, oe), this.start = e.start, this.end = e.end, this.decimal = e.decimal
  }

  function te(e, n) {
    for (var i = 0; i < n.length; i++) {
      var o = n[i];
      o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, o.key, o)
    }
  }
  var ae = (function (e, n, i) {
    return n && te(e.prototype, n), i && te(e, i), e
  }(re, [{
    key: "begin",
    value: function () {
      return this.isRunning || this.next === this.end || (this.frame = window.requestAnimationFrame(this._tick.bind(this))), this
    }
  }, {
    key: "stop",
    value: function () {
      return window.cancelAnimationFrame(this.frame), this.isRunning = !1, this.frame = null, this.timeStart = null, this.next = null, this
    }
  }, {
    key: "on",
    value: function (e, n) {
      return this.events[e] = this.events[e] || [], this.events[e].push(n), this
    }
  }, {
    key: "_emit",
    value: function (e, n) {
      var i = this,
        e = this.events[e];
      e && e.forEach(function (e) {
        return e.call(i, n)
      })
    }
  }, {
    key: "_tick",
    value: function (e) {
      this.isRunning = !0;
      var n = this.next || this.start;
      this.timeStart || (this.timeStart = e), this.timeElapsed = e - this.timeStart, this.next = this.ease(this.timeElapsed, this.start, this.end - this.start, this.duration), this._shouldTick(n) ? (this._emit("tick", this.tweener.getIntermediateValue(this.next)), this.frame = window.requestAnimationFrame(this._tick.bind(this))) : (this._emit("tick", this.tweener.getFinalValue()), this._emit("done", null))
    }
  }, {
    key: "_shouldTick",
    value: function (e) {
      return {
        up: this.next < this.end && e <= this.next,
        down: this.next > this.end && e >= this.next
      } [this.direction]
    }
  }, {
    key: "_defaultEase",
    value: function (e, n, i, o) {
      return (e /= o / 2) < 1 ? i / 2 * e * e + n : -i / 2 * (--e * (e - 2) - 1) + n
    }
  }]), re);

  function re() {
    var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {};
    ! function (e, n) {
      if (!(e instanceof n)) throw new TypeError("Cannot call a class as a function")
    }(this, re), this.duration = e.duration || 1e3, this.ease = e.easing || this._defaultEase, this.tweener = e.tweener || new ie(e), this.start = this.tweener.start, this.end = this.tweener.end, this.frame = null, this.next = null, this.isRunning = !1, this.events = {}, this.direction = this.start < this.end ? "up" : "down"
  }
  var ce = document.currentScript;

  function ue(e) {
    var n, i = m({
        auto2top: !1,
        autoHeader: !1,
        basePath: "",
        catchPluginErrors: !0,
        cornerExternalLinkTarget: "_blank",
        coverpage: "",
        el: "#app",
        executeScript: null,
        ext: ".md",
        externalLinkRel: "noopener",
        externalLinkTarget: "_blank",
        formatUpdated: "",
        ga: "",
        homepage: "README.md",
        loadNavbar: null,
        loadSidebar: null,
        maxLevel: 6,
        mergeNavbar: !1,
        name: "",
        nameLink: window.location.pathname,
        nativeEmoji: !1,
        noCompileLinks: [],
        noEmoji: !1,
        notFoundPage: !0,
        relativePath: !1,
        repo: "",
        routes: {},
        routerMode: "hash",
        subMaxLevel: 0,
        themeColor: "",
        topMargin: 0
      }, "function" == typeof window.$docsify ? window.$docsify(e) : window.$docsify),
      o = ce || [].slice.call(document.getElementsByTagName("script")).filter(function (e) {
        return /docsify\./.test(e.src)
      })[0];
    if (o)
      for (var t in i) !u.call(i, t) || f(n = o.getAttribute("data-" + a(t))) && (i[t] = "" === n || n);
    return !0 === i.loadSidebar && (i.loadSidebar = "_sidebar" + i.ext), !0 === i.loadNavbar && (i.loadNavbar = "_navbar" + i.ext), !0 === i.coverpage && (i.coverpage = "_coverpage" + i.ext), !0 === i.repo && (i.repo = ""), !0 === i.name && (i.name = ""), window.$docsify = i
  }
  var fe = {},
    pe = !1,
    de = null,
    ge = !0,
    se = 0;

  function le(e) {
    if (ge) {
      for (var n, i = l(".sidebar"), o = k(".anchor"), t = b(i, ".sidebar-nav"), a = b(i, "li.active"), r = document.documentElement, c = (r && r.scrollTop || document.body.scrollTop) - se, u = 0, f = o.length; u < f; u += 1) {
        var p = o[u];
        if (p.offsetTop > c) {
          n = n || p;
          break
        }
        n = p
      }!n || (r = fe[ve(e, n.getAttribute("data-id"))]) && r !== a && (a && a.classList.remove("active"), r.classList.add("active"), a = r, !pe && h.classList.contains("sticky") && (e = i.clientHeight, r = a.offsetTop + a.clientHeight + 40, a = a.offsetTop >= t.scrollTop && r <= t.scrollTop + e, i.scrollTop = a ? t.scrollTop : +r < e ? 0 : r - e))
    }
  }

  function ve(e, n) {
    return decodeURIComponent(e) + "?id=" + decodeURIComponent(n)
  }

  function he(e, n) {
    var i, o;
    n && (o = ue().topMargin, (i = b("#" + n)) && (i = i, void 0 === (o = o) && (o = 0), de && de.stop(), ge = !1, de = new ae({
      start: window.pageYOffset,
      end: Math.round(i.getBoundingClientRect().top) + window.pageYOffset - o,
      duration: 500
    }).on("tick", function (e) {
      return window.scrollTo(0, e)
    }).on("done", function () {
      ge = !0, de = null
    }).begin()), e = fe[ve(e, n)], (n = b(l(".sidebar"), "li.active")) && n.classList.remove("active"), e && e.classList.add("active"))
  }
  var _e = v.scrollingElement || v.documentElement;
  var me = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {};

  function be(e, n) {
    return e(n = {
      exports: {}
    }, n.exports), n.exports
  }

  function ke(e) {
    return $e[e]
  }
  var we = be(function (n) {
      function e() {
        return {
          baseUrl: null,
          breaks: !1,
          gfm: !0,
          headerIds: !0,
          headerPrefix: "",
          highlight: null,
          langPrefix: "language-",
          mangle: !0,
          pedantic: !1,
          renderer: null,
          sanitize: !1,
          sanitizer: null,
          silent: !1,
          smartLists: !1,
          smartypants: !1,
          tokenizer: null,
          walkTokens: null,
          xhtml: !1
        }
      }
      n.exports = {
        defaults: e(),
        getDefaults: e,
        changeDefaults: function (e) {
          n.exports.defaults = e
        }
      }
    }),
    ye = (we.defaults, we.getDefaults, we.changeDefaults, /[&<>"']/),
    xe = /[&<>"']/g,
    Se = /[<>"']|&(?!#?\w+;)/,
    Ae = /[<>"']|&(?!#?\w+;)/g,
    $e = {
      "&": "&amp;",
      "<": "&lt;",
      ">": "&gt;",
      '"': "&quot;",
      "'": "&#39;"
    };
  var ze = /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;

  function Fe(e) {
    return e.replace(ze, function (e, n) {
      return "colon" === (n = n.toLowerCase()) ? ":" : "#" === n.charAt(0) ? "x" === n.charAt(1) ? String.fromCharCode(parseInt(n.substring(2), 16)) : String.fromCharCode(+n.substring(1)) : ""
    })
  }
  var Ee = /(^|[^\[])\^/g;
  var Re = /[^\w:]/g,
    Te = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;
  var Ce = {},
    je = /^[^:]+:\/*[^/]*$/,
    Le = /^([^:]+:)[\s\S]*$/,
    Oe = /^([^:]+:\/*[^/]*)[\s\S]*$/;

  function qe(e, n) {
    Ce[" " + e] || (je.test(e) ? Ce[" " + e] = e + "/" : Ce[" " + e] = Pe(e, "/", !0));
    var i = -1 === (e = Ce[" " + e]).indexOf(":");
    return "//" === n.substring(0, 2) ? i ? n : e.replace(Le, "$1") + n : "/" === n.charAt(0) ? i ? n : e.replace(Oe, "$1") + n : e + n
  }

  function Pe(e, n, i) {
    var o = e.length;
    if (0 === o) return "";
    for (var t = 0; t < o;) {
      var a = e.charAt(o - t - 1);
      if (a !== n || i) {
        if (a === n || !i) break;
        t++
      } else t++
    }
    return e.substr(0, o - t)
  }
  var Me = function (e, n) {
      if (n) {
        if (ye.test(e)) return e.replace(xe, ke)
      } else if (Se.test(e)) return e.replace(Ae, ke);
      return e
    },
    Ie = Fe,
    Ne = function (i, e) {
      i = i.source || i, e = e || "";
      var o = {
        replace: function (e, n) {
          return n = (n = n.source || n).replace(Ee, "$1"), i = i.replace(e, n), o
        },
        getRegex: function () {
          return new RegExp(i, e)
        }
      };
      return o
    },
    He = function (e, n, i) {
      if (e) {
        var o;
        try {
          o = decodeURIComponent(Fe(i)).replace(Re, "").toLowerCase()
        } catch (e) {
          return null
        }
        if (0 === o.indexOf("javascript:") || 0 === o.indexOf("vbscript:") || 0 === o.indexOf("data:")) return null
      }
      n && !Te.test(i) && (i = qe(n, i));
      try {
        i = encodeURI(i).replace(/%25/g, "%")
      } catch (e) {
        return null
      }
      return i
    },
    De = {
      exec: function () {}
    },
    Ue = function (e) {
      for (var n, i, o = arguments, t = 1; t < arguments.length; t++)
        for (i in n = o[t]) Object.prototype.hasOwnProperty.call(n, i) && (e[i] = n[i]);
      return e
    },
    Ze = function (e, n) {
      var i = e.replace(/\|/g, function (e, n, i) {
          for (var o = !1, t = n; 0 <= --t && "\\" === i[t];) o = !o;
          return o ? "|" : " |"
        }).split(/ \|/),
        o = 0;
      if (i.length > n) i.splice(n);
      else
        for (; i.length < n;) i.push("");
      for (; o < i.length; o++) i[o] = i[o].trim().replace(/\\\|/g, "|");
      return i
    },
    Be = Pe,
    Ve = function (e, n) {
      if (-1 === e.indexOf(n[1])) return -1;
      for (var i = e.length, o = 0, t = 0; t < i; t++)
        if ("\\" === e[t]) t++;
        else if (e[t] === n[0]) o++;
      else if (e[t] === n[1] && --o < 0) return t;
      return -1
    },
    Ye = function (e) {
      e && e.sanitize && !e.silent && console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")
    },
    Ge = function (e, n) {
      if (n < 1) return "";
      for (var i = ""; 1 < n;) 1 & n && (i += e), n >>= 1, e += e;
      return i + e
    },
    We = we.defaults,
    Xe = Be,
    Qe = Ze,
    Je = Me,
    Ke = Ve;

  function en(e, n, i) {
    var o = n.href,
      t = n.title ? Je(n.title) : null,
      n = e[1].replace(/\\([\[\]])/g, "$1");
    return "!" !== e[0].charAt(0) ? {
      type: "link",
      raw: i,
      href: o,
      title: t,
      text: n
    } : {
      type: "image",
      raw: i,
      href: o,
      title: t,
      text: Je(n)
    }
  }
  var nn = function () {
      function e(e) {
        this.options = e || We
      }
      return e.prototype.space = function (e) {
        e = this.rules.block.newline.exec(e);
        if (e) return 1 < e[0].length ? {
          type: "space",
          raw: e[0]
        } : {
          raw: "\n"
        }
      }, e.prototype.code = function (e, n) {
        e = this.rules.block.code.exec(e);
        if (e) {
          n = n[n.length - 1];
          if (n && "paragraph" === n.type) return {
            raw: e[0],
            text: e[0].trimRight()
          };
          n = e[0].replace(/^ {1,4}/gm, "");
          return {
            type: "code",
            raw: e[0],
            codeBlockStyle: "indented",
            text: this.options.pedantic ? n : Xe(n, "\n")
          }
        }
      }, e.prototype.fences = function (e) {
        var n = this.rules.block.fences.exec(e);
        if (n) {
          var i = n[0],
            e = function (e, n) {
              if (null === (e = e.match(/^(\s+)(?:```)/))) return n;
              var i = e[1];
              return n.split("\n").map(function (e) {
                var n = e.match(/^\s+/);
                return null !== n && n[0].length >= i.length ? e.slice(i.length) : e
              }).join("\n")
            }(i, n[3] || "");
          return {
            type: "code",
            raw: i,
            lang: n[2] && n[2].trim(),
            text: e
          }
        }
      }, e.prototype.heading = function (e) {
        var n = this.rules.block.heading.exec(e);
        if (n) {
          var i = n[2].trim();
          return /#$/.test(i) && (e = Xe(i, "#"), !this.options.pedantic && e && !/ $/.test(e) || (i = e.trim())), {
            type: "heading",
            raw: n[0],
            depth: n[1].length,
            text: i
          }
        }
      }, e.prototype.nptable = function (e) {
        e = this.rules.block.nptable.exec(e);
        if (e) {
          var n = {
            type: "table",
            header: Qe(e[1].replace(/^ *| *\| *$/g, "")),
            align: e[2].replace(/^ *|\| *$/g, "").split(/ *\| */),
            cells: e[3] ? e[3].replace(/\n$/, "").split("\n") : [],
            raw: e[0]
          };
          if (n.header.length === n.align.length) {
            for (var i = n.align.length, o = 0; o < i; o++) /^ *-+: *$/.test(n.align[o]) ? n.align[o] = "right" : /^ *:-+: *$/.test(n.align[o]) ? n.align[o] = "center" : /^ *:-+ *$/.test(n.align[o]) ? n.align[o] = "left" : n.align[o] = null;
            for (i = n.cells.length, o = 0; o < i; o++) n.cells[o] = Qe(n.cells[o], n.header.length);
            return n
          }
        }
      }, e.prototype.hr = function (e) {
        e = this.rules.block.hr.exec(e);
        if (e) return {
          type: "hr",
          raw: e[0]
        }
      }, e.prototype.blockquote = function (e) {
        var n = this.rules.block.blockquote.exec(e);
        if (n) {
          e = n[0].replace(/^ *> ?/gm, "");
          return {
            type: "blockquote",
            raw: n[0],
            text: e
          }
        }
      }, e.prototype.list = function (e) {
        e = this.rules.block.list.exec(e);
        if (e) {
          for (var n, i, o, t, a, r = e[0], c = e[2], u = 1 < c.length, f = {
              type: "list",
              raw: r,
              ordered: u,
              start: u ? +c.slice(0, -1) : "",
              loose: !1,
              items: []
            }, p = e[0].match(this.rules.block.item), d = !1, g = p.length, s = this.rules.block.listItemStart.exec(p[0]), l = 0; l < g; l++) {
            if (r = n = p[l], l !== g - 1) {
              if (o = this.rules.block.listItemStart.exec(p[l + 1]), this.options.pedantic ? o[1].length > s[1].length : o[1].length > s[0].length || 3 < o[1].length) {
                p.splice(l, 2, p[l] + "\n" + p[l + 1]), l--, g--;
                continue
              }(!this.options.pedantic || this.options.smartLists ? o[2][o[2].length - 1] !== c[c.length - 1] : u == (1 === o[2].length)) && (i = p.slice(l + 1).join("\n"), f.raw = f.raw.substring(0, f.raw.length - i.length), l = g - 1), s = o
            }
            o = n.length, ~(n = n.replace(/^ *([*+-]|\d+[.)]) ?/, "")).indexOf("\n ") && (o -= n.length, n = this.options.pedantic ? n.replace(/^ {1,4}/gm, "") : n.replace(new RegExp("^ {1," + o + "}", "gm"), "")), o = d || /\n\n(?!\s*$)/.test(n), l !== g - 1 && (d = "\n" === n.charAt(n.length - 1), o = o || d), o && (f.loose = !0), this.options.gfm && (a = void 0, (t = /^\[[ xX]\] /.test(n)) && (a = " " !== n[1], n = n.replace(/^\[[ xX]\] +/, ""))), f.items.push({
              type: "list_item",
              raw: r,
              task: t,
              checked: a,
              loose: o,
              text: n
            })
          }
          return f
        }
      }, e.prototype.html = function (e) {
        e = this.rules.block.html.exec(e);
        if (e) return {
          type: this.options.sanitize ? "paragraph" : "html",
          raw: e[0],
          pre: !this.options.sanitizer && ("pre" === e[1] || "script" === e[1] || "style" === e[1]),
          text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(e[0]) : Je(e[0]) : e[0]
        }
      }, e.prototype.def = function (e) {
        e = this.rules.block.def.exec(e);
        if (e) return e[3] && (e[3] = e[3].substring(1, e[3].length - 1)), {
          tag: e[1].toLowerCase().replace(/\s+/g, " "),
          raw: e[0],
          href: e[2],
          title: e[3]
        }
      }, e.prototype.table = function (e) {
        e = this.rules.block.table.exec(e);
        if (e) {
          var n = {
            type: "table",
            header: Qe(e[1].replace(/^ *| *\| *$/g, "")),
            align: e[2].replace(/^ *|\| *$/g, "").split(/ *\| */),
            cells: e[3] ? e[3].replace(/\n$/, "").split("\n") : []
          };
          if (n.header.length === n.align.length) {
            n.raw = e[0];
            for (var i = n.align.length, o = 0; o < i; o++) /^ *-+: *$/.test(n.align[o]) ? n.align[o] = "right" : /^ *:-+: *$/.test(n.align[o]) ? n.align[o] = "center" : /^ *:-+ *$/.test(n.align[o]) ? n.align[o] = "left" : n.align[o] = null;
            for (i = n.cells.length, o = 0; o < i; o++) n.cells[o] = Qe(n.cells[o].replace(/^ *\| *| *\| *$/g, ""), n.header.length);
            return n
          }
        }
      }, e.prototype.lheading = function (e) {
        e = this.rules.block.lheading.exec(e);
        if (e) return {
          type: "heading",
          raw: e[0],
          depth: "=" === e[2].charAt(0) ? 1 : 2,
          text: e[1]
        }
      }, e.prototype.paragraph = function (e) {
        e = this.rules.block.paragraph.exec(e);
        if (e) return {
          type: "paragraph",
          raw: e[0],
          text: "\n" === e[1].charAt(e[1].length - 1) ? e[1].slice(0, -1) : e[1]
        }
      }, e.prototype.text = function (e, n) {
        e = this.rules.block.text.exec(e);
        if (e) {
          n = n[n.length - 1];
          return n && "text" === n.type ? {
            raw: e[0],
            text: e[0]
          } : {
            type: "text",
            raw: e[0],
            text: e[0]
          }
        }
      }, e.prototype.escape = function (e) {
        e = this.rules.inline.escape.exec(e);
        if (e) return {
          type: "escape",
          raw: e[0],
          text: Je(e[1])
        }
      }, e.prototype.tag = function (e, n, i) {
        e = this.rules.inline.tag.exec(e);
        if (e) return !n && /^<a /i.test(e[0]) ? n = !0 : n && /^<\/a>/i.test(e[0]) && (n = !1), !i && /^<(pre|code|kbd|script)(\s|>)/i.test(e[0]) ? i = !0 : i && /^<\/(pre|code|kbd|script)(\s|>)/i.test(e[0]) && (i = !1), {
          type: this.options.sanitize ? "text" : "html",
          raw: e[0],
          inLink: n,
          inRawBlock: i,
          text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(e[0]) : Je(e[0]) : e[0]
        }
      }, e.prototype.link = function (e) {
        var n = this.rules.inline.link.exec(e);
        if (n) {
          e = n[2].trim();
          if (!this.options.pedantic && /^</.test(e)) {
            if (!/>$/.test(e)) return;
            var i = Xe(e.slice(0, -1), "\\");
            if ((e.length - i.length) % 2 == 0) return
          } else {
            var o = Ke(n[2], "()"); - 1 < o && (t = (0 === n[0].indexOf("!") ? 5 : 4) + n[1].length + o, n[2] = n[2].substring(0, o), n[0] = n[0].substring(0, t).trim(), n[3] = "")
          }
          var t, i = n[2],
            o = "";
          return this.options.pedantic ? (t = /^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(i)) && (i = t[1], o = t[3]) : o = n[3] ? n[3].slice(1, -1) : "", i = i.trim(), en(n, {
            href: (i = /^</.test(i) ? this.options.pedantic && !/>$/.test(e) ? i.slice(1) : i.slice(1, -1) : i) && i.replace(this.rules.inline._escapes, "$1"),
            title: o && o.replace(this.rules.inline._escapes, "$1")
          }, n[0])
        }
      }, e.prototype.reflink = function (e, n) {
        if ((i = this.rules.inline.reflink.exec(e)) || (i = this.rules.inline.nolink.exec(e))) {
          var e = (i[2] || i[1]).replace(/\s+/g, " ");
          if ((e = n[e.toLowerCase()]) && e.href) return en(i, e, i[0]);
          var i = i[0].charAt(0);
          return {
            type: "text",
            raw: i,
            text: i
          }
        }
      }, e.prototype.strong = function (e, n, i) {
        void 0 === i && (i = "");
        var o = this.rules.inline.strong.start.exec(e);
        if (o && (!o[1] || o[1] && ("" === i || this.rules.inline.punctuation.exec(i)))) {
          n = n.slice(-1 * e.length);
          var t, a = "**" === o[0] ? this.rules.inline.strong.endAst : this.rules.inline.strong.endUnd;
          for (a.lastIndex = 0; null != (o = a.exec(n));)
            if (t = this.rules.inline.strong.middle.exec(n.slice(0, o.index + 3))) return {
              type: "strong",
              raw: e.slice(0, t[0].length),
              text: e.slice(2, t[0].length - 2)
            }
        }
      }, e.prototype.em = function (e, n, i) {
        void 0 === i && (i = "");
        var o = this.rules.inline.em.start.exec(e);
        if (o && (!o[1] || o[1] && ("" === i || this.rules.inline.punctuation.exec(i)))) {
          n = n.slice(-1 * e.length);
          var t, a = "*" === o[0] ? this.rules.inline.em.endAst : this.rules.inline.em.endUnd;
          for (a.lastIndex = 0; null != (o = a.exec(n));)
            if (t = this.rules.inline.em.middle.exec(n.slice(0, o.index + 2))) return {
              type: "em",
              raw: e.slice(0, t[0].length),
              text: e.slice(1, t[0].length - 1)
            }
        }
      }, e.prototype.codespan = function (e) {
        var n = this.rules.inline.code.exec(e);
        if (n) {
          var i = n[2].replace(/\n/g, " "),
            o = /[^ ]/.test(i),
            e = /^ /.test(i) && / $/.test(i);
          return o && e && (i = i.substring(1, i.length - 1)), i = Je(i, !0), {
            type: "codespan",
            raw: n[0],
            text: i
          }
        }
      }, e.prototype.br = function (e) {
        e = this.rules.inline.br.exec(e);
        if (e) return {
          type: "br",
          raw: e[0]
        }
      }, e.prototype.del = function (e) {
        e = this.rules.inline.del.exec(e);
        if (e) return {
          type: "del",
          raw: e[0],
          text: e[2]
        }
      }, e.prototype.autolink = function (e, n) {
        e = this.rules.inline.autolink.exec(e);
        if (e) {
          var i, n = "@" === e[2] ? "mailto:" + (i = Je(this.options.mangle ? n(e[1]) : e[1])) : i = Je(e[1]);
          return {
            type: "link",
            raw: e[0],
            text: i,
            href: n,
            tokens: [{
              type: "text",
              raw: i,
              text: i
            }]
          }
        }
      }, e.prototype.url = function (e, n) {
        var i, o, t, a;
        if (i = this.rules.inline.url.exec(e)) {
          if ("@" === i[2]) t = "mailto:" + (o = Je(this.options.mangle ? n(i[0]) : i[0]));
          else {
            for (; a = i[0], i[0] = this.rules.inline._backpedal.exec(i[0])[0], a !== i[0];);
            o = Je(i[0]), t = "www." === i[1] ? "http://" + o : o
          }
          return {
            type: "link",
            raw: i[0],
            text: o,
            href: t,
            tokens: [{
              type: "text",
              raw: o,
              text: o
            }]
          }
        }
      }, e.prototype.inlineText = function (e, n, i) {
        e = this.rules.inline.text.exec(e);
        if (e) {
          i = n ? this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(e[0]) : Je(e[0]) : e[0] : Je(this.options.smartypants ? i(e[0]) : e[0]);
          return {
            type: "text",
            raw: e[0],
            text: i
          }
        }
      }, e
    }(),
    Ze = De,
    Ve = Ne,
    De = Ue,
    Ne = {
      newline: /^(?: *(?:\n|$))+/,
      code: /^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,
      fences: /^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,
      hr: /^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,
      heading: /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,
      blockquote: /^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,
      list: /^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,
      html: "^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",
      def: /^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,
      nptable: Ze,
      table: Ze,
      lheading: /^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,
      _paragraph: /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,
      text: /^[^\n]+/,
      _label: /(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,
      _title: /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/
    };
  Ne.def = Ve(Ne.def).replace("label", Ne._label).replace("title", Ne._title).getRegex(), Ne.bullet = /(?:[*+-]|\d{1,9}[.)])/, Ne.item = /^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/, Ne.item = Ve(Ne.item, "gm").replace(/bull/g, Ne.bullet).getRegex(), Ne.listItemStart = Ve(/^( *)(bull)/).replace("bull", Ne.bullet).getRegex(), Ne.list = Ve(Ne.list).replace(/bull/g, Ne.bullet).replace("hr", "\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def", "\\n+(?=" + Ne.def.source + ")").getRegex(), Ne._tag = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Ne._comment = /<!--(?!-?>)[\s\S]*?(?:-->|$)/, Ne.html = Ve(Ne.html, "i").replace("comment", Ne._comment).replace("tag", Ne._tag).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Ne.paragraph = Ve(Ne._paragraph).replace("hr", Ne.hr).replace("heading", " {0,3}#{1,6} ").replace("|lheading", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag", Ne._tag).getRegex(), Ne.blockquote = Ve(Ne.blockquote).replace("paragraph", Ne.paragraph).getRegex(), Ne.normal = De({}, Ne), Ne.gfm = De({}, Ne.normal, {
    nptable: "^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",
    table: "^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"
  }), Ne.gfm.nptable = Ve(Ne.gfm.nptable).replace("hr", Ne.hr).replace("heading", " {0,3}#{1,6} ").replace("blockquote", " {0,3}>").replace("code", " {4}[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag", Ne._tag).getRegex(), Ne.gfm.table = Ve(Ne.gfm.table).replace("hr", Ne.hr).replace("heading", " {0,3}#{1,6} ").replace("blockquote", " {0,3}>").replace("code", " {4}[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag", Ne._tag).getRegex(), Ne.pedantic = De({}, Ne.normal, {
    html: Ve("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", Ne._comment).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
    def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
    heading: /^(#{1,6})(.*)(?:\n+|$)/,
    fences: Ze,
    paragraph: Ve(Ne.normal._paragraph).replace("hr", Ne.hr).replace("heading", " *#{1,6} *[^\n]").replace("lheading", Ne.lheading).replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").getRegex()
  });
  Ze = {
    escape: /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,
    autolink: /^<(scheme:[^\s\x00-\x1f<>]*|email)>/,
    url: Ze,
    tag: "^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",
    link: /^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,
    reflink: /^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,
    nolink: /^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,
    reflinkSearch: "reflink|nolink(?!\\()",
    strong: {
      start: /^(?:(\*\*(?=[*punctuation]))|\*\*)(?![\s])|__/,
      middle: /^\*\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*\*$|^__(?![\s])((?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?)__$/,
      endAst: /[^punctuation\s]\*\*(?!\*)|[punctuation]\*\*(?!\*)(?:(?=[punctuation_\s]|$))/,
      endUnd: /[^\s]__(?!_)(?:(?=[punctuation*\s])|$)/
    },
    em: {
      start: /^(?:(\*(?=[punctuation]))|\*)(?![*\s])|_/,
      middle: /^\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*$|^_(?![_\s])(?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?_$/,
      endAst: /[^punctuation\s]\*(?!\*)|[punctuation]\*(?!\*)(?:(?=[punctuation_\s]|$))/,
      endUnd: /[^\s]_(?!_)(?:(?=[punctuation*\s])|$)/
    },
    code: /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,
    br: /^( {2,}|\\)\n(?!\s*$)/,
    del: Ze,
    text: /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n)))/,
    punctuation: /^([\s*punctuation])/,
    _punctuation: "!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~"
  };
  Ze.punctuation = Ve(Ze.punctuation).replace(/punctuation/g, Ze._punctuation).getRegex(), Ze._blockSkip = "\\[[^\\]]*?\\]\\([^\\)]*?\\)|`[^`]*?`|<[^>]*?>", Ze._overlapSkip = "__[^_]*?__|\\*\\*\\[^\\*\\]*?\\*\\*", Ze._comment = Ve(Ne._comment).replace("(?:--\x3e|$)", "--\x3e").getRegex(), Ze.em.start = Ve(Ze.em.start).replace(/punctuation/g, Ze._punctuation).getRegex(), Ze.em.middle = Ve(Ze.em.middle).replace(/punctuation/g, Ze._punctuation).replace(/overlapSkip/g, Ze._overlapSkip).getRegex(), Ze.em.endAst = Ve(Ze.em.endAst, "g").replace(/punctuation/g, Ze._punctuation).getRegex(), Ze.em.endUnd = Ve(Ze.em.endUnd, "g").replace(/punctuation/g, Ze._punctuation).getRegex(), Ze.strong.start = Ve(Ze.strong.start).replace(/punctuation/g, Ze._punctuation).getRegex(), Ze.strong.middle = Ve(Ze.strong.middle).replace(/punctuation/g, Ze._punctuation).replace(/overlapSkip/g, Ze._overlapSkip).getRegex(), Ze.strong.endAst = Ve(Ze.strong.endAst, "g").replace(/punctuation/g, Ze._punctuation).getRegex(), Ze.strong.endUnd = Ve(Ze.strong.endUnd, "g").replace(/punctuation/g, Ze._punctuation).getRegex(), Ze.blockSkip = Ve(Ze._blockSkip, "g").getRegex(), Ze.overlapSkip = Ve(Ze._overlapSkip, "g").getRegex(), Ze._escapes = /\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g, Ze._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/, Ze._email = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/, Ze.autolink = Ve(Ze.autolink).replace("scheme", Ze._scheme).replace("email", Ze._email).getRegex(), Ze._attribute = /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/, Ze.tag = Ve(Ze.tag).replace("comment", Ze._comment).replace("attribute", Ze._attribute).getRegex(), Ze._label = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/, Ze._href = /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/, Ze._title = /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/, Ze.link = Ve(Ze.link).replace("label", Ze._label).replace("href", Ze._href).replace("title", Ze._title).getRegex(), Ze.reflink = Ve(Ze.reflink).replace("label", Ze._label).getRegex(), Ze.reflinkSearch = Ve(Ze.reflinkSearch, "g").replace("reflink", Ze.reflink).replace("nolink", Ze.nolink).getRegex(), Ze.normal = De({}, Ze), Ze.pedantic = De({}, Ze.normal, {
    strong: {
      start: /^__|\*\*/,
      middle: /^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,
      endAst: /\*\*(?!\*)/g,
      endUnd: /__(?!_)/g
    },
    em: {
      start: /^_|\*/,
      middle: /^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,
      endAst: /\*(?!\*)/g,
      endUnd: /_(?!_)/g
    },
    link: Ve(/^!?\[(label)\]\((.*?)\)/).replace("label", Ze._label).getRegex(),
    reflink: Ve(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", Ze._label).getRegex()
  }), Ze.gfm = De({}, Ze.normal, {
    escape: Ve(Ze.escape).replace("])", "~|])").getRegex(),
    _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,
    url: /^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,
    _backpedal: /(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,
    del: /^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,
    text: /^([`~]+|[^`~])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/
  }), Ze.gfm.url = Ve(Ze.gfm.url, "i").replace("email", Ze.gfm._extended_email).getRegex(), Ze.breaks = De({}, Ze.gfm, {
    br: Ve(Ze.br).replace("{2,}", "*").getRegex(),
    text: Ve(Ze.gfm.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
  });
  var Ze = {
      block: Ne,
      inline: Ze
    },
    on = we.defaults,
    tn = Ze.block,
    an = Ze.inline,
    rn = Ge;

  function cn(e) {
    return e.replace(/---/g, "—").replace(/--/g, "–").replace(/(^|[-\u2014/(\[{"\s])'/g, "$1‘").replace(/'/g, "’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g, "$1“").replace(/"/g, "”").replace(/\.{3}/g, "…")
  }

  function un(e) {
    for (var n, i = "", o = e.length, t = 0; t < o; t++) n = e.charCodeAt(t), i += "&#" + (n = .5 < Math.random() ? "x" + n.toString(16) : n) + ";";
    return i
  }
  var fn = function () {
      function i(e) {
        this.tokens = [], this.tokens.links = Object.create(null), this.options = e || on, this.options.tokenizer = this.options.tokenizer || new nn, this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options;
        e = {
          block: tn.normal,
          inline: an.normal
        };
        this.options.pedantic ? (e.block = tn.pedantic, e.inline = an.pedantic) : this.options.gfm && (e.block = tn.gfm, this.options.breaks ? e.inline = an.breaks : e.inline = an.gfm), this.tokenizer.rules = e
      }
      var e = {
        rules: {
          configurable: !0
        }
      };
      return e.rules.get = function () {
        return {
          block: tn,
          inline: an
        }
      }, i.lex = function (e, n) {
        return new i(n).lex(e)
      }, i.lexInline = function (e, n) {
        return new i(n).inlineTokens(e)
      }, i.prototype.lex = function (e) {
        return e = e.replace(/\r\n|\r/g, "\n").replace(/\t/g, "    "), this.blockTokens(e, this.tokens, !0), this.inline(this.tokens), this.tokens
      }, i.prototype.blockTokens = function (e, n, i) {
        var o, t, a, r;
        for (void 0 === n && (n = []), void 0 === i && (i = !0), this.options.pedantic && (e = e.replace(/^ +$/gm, "")); e;)
          if (o = this.tokenizer.space(e)) e = e.substring(o.raw.length), o.type && n.push(o);
          else if (o = this.tokenizer.code(e, n)) e = e.substring(o.raw.length), o.type ? n.push(o) : ((r = n[n.length - 1]).raw += "\n" + o.raw, r.text += "\n" + o.text);
        else if (o = this.tokenizer.fences(e)) e = e.substring(o.raw.length), n.push(o);
        else if (o = this.tokenizer.heading(e)) e = e.substring(o.raw.length), n.push(o);
        else if (o = this.tokenizer.nptable(e)) e = e.substring(o.raw.length), n.push(o);
        else if (o = this.tokenizer.hr(e)) e = e.substring(o.raw.length), n.push(o);
        else if (o = this.tokenizer.blockquote(e)) e = e.substring(o.raw.length), o.tokens = this.blockTokens(o.text, [], i), n.push(o);
        else if (o = this.tokenizer.list(e)) {
          for (e = e.substring(o.raw.length), a = o.items.length, t = 0; t < a; t++) o.items[t].tokens = this.blockTokens(o.items[t].text, [], !1);
          n.push(o)
        } else if (o = this.tokenizer.html(e)) e = e.substring(o.raw.length), n.push(o);
        else if (i && (o = this.tokenizer.def(e))) e = e.substring(o.raw.length), this.tokens.links[o.tag] || (this.tokens.links[o.tag] = {
          href: o.href,
          title: o.title
        });
        else if (o = this.tokenizer.table(e)) e = e.substring(o.raw.length), n.push(o);
        else if (o = this.tokenizer.lheading(e)) e = e.substring(o.raw.length), n.push(o);
        else if (i && (o = this.tokenizer.paragraph(e))) e = e.substring(o.raw.length), n.push(o);
        else if (o = this.tokenizer.text(e, n)) e = e.substring(o.raw.length), o.type ? n.push(o) : ((r = n[n.length - 1]).raw += "\n" + o.raw, r.text += "\n" + o.text);
        else if (e) {
          var c = "Infinite loop on byte: " + e.charCodeAt(0);
          if (this.options.silent) {
            console.error(c);
            break
          }
          throw new Error(c)
        }
        return n
      }, i.prototype.inline = function (e) {
        for (var n, i, o, t, a, r = e.length, c = 0; c < r; c++) switch ((a = e[c]).type) {
          case "paragraph":
          case "text":
          case "heading":
            a.tokens = [], this.inlineTokens(a.text, a.tokens);
            break;
          case "table":
            for (a.tokens = {
                header: [],
                cells: []
              }, o = a.header.length, n = 0; n < o; n++) a.tokens.header[n] = [], this.inlineTokens(a.header[n], a.tokens.header[n]);
            for (o = a.cells.length, n = 0; n < o; n++)
              for (t = a.cells[n], a.tokens.cells[n] = [], i = 0; i < t.length; i++) a.tokens.cells[n][i] = [], this.inlineTokens(t[i], a.tokens.cells[n][i]);
            break;
          case "blockquote":
            this.inline(a.tokens);
            break;
          case "list":
            for (o = a.items.length, n = 0; n < o; n++) this.inline(a.items[n].tokens)
        }
        return e
      }, i.prototype.inlineTokens = function (e, n, i, o) {
        var t;
        void 0 === n && (n = []), void 0 === i && (i = !1), void 0 === o && (o = !1);
        var a, r, c, u = e;
        if (this.tokens.links) {
          var f = Object.keys(this.tokens.links);
          if (0 < f.length)
            for (; null != (a = this.tokenizer.rules.inline.reflinkSearch.exec(u));) f.includes(a[0].slice(a[0].lastIndexOf("[") + 1, -1)) && (u = u.slice(0, a.index) + "[" + rn("a", a[0].length - 2) + "]" + u.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))
        }
        for (; null != (a = this.tokenizer.rules.inline.blockSkip.exec(u));) u = u.slice(0, a.index) + "[" + rn("a", a[0].length - 2) + "]" + u.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);
        for (; e;)
          if (r || (c = ""), r = !1, t = this.tokenizer.escape(e)) e = e.substring(t.raw.length), n.push(t);
          else if (t = this.tokenizer.tag(e, i, o)) e = e.substring(t.raw.length), i = t.inLink, o = t.inRawBlock, n.push(t);
        else if (t = this.tokenizer.link(e)) e = e.substring(t.raw.length), "link" === t.type && (t.tokens = this.inlineTokens(t.text, [], !0, o)), n.push(t);
        else if (t = this.tokenizer.reflink(e, this.tokens.links)) e = e.substring(t.raw.length), "link" === t.type && (t.tokens = this.inlineTokens(t.text, [], !0, o)), n.push(t);
        else if (t = this.tokenizer.strong(e, u, c)) e = e.substring(t.raw.length), t.tokens = this.inlineTokens(t.text, [], i, o), n.push(t);
        else if (t = this.tokenizer.em(e, u, c)) e = e.substring(t.raw.length), t.tokens = this.inlineTokens(t.text, [], i, o), n.push(t);
        else if (t = this.tokenizer.codespan(e)) e = e.substring(t.raw.length), n.push(t);
        else if (t = this.tokenizer.br(e)) e = e.substring(t.raw.length), n.push(t);
        else if (t = this.tokenizer.del(e)) e = e.substring(t.raw.length), t.tokens = this.inlineTokens(t.text, [], i, o), n.push(t);
        else if (t = this.tokenizer.autolink(e, un)) e = e.substring(t.raw.length), n.push(t);
        else if (i || !(t = this.tokenizer.url(e, un))) {
          if (t = this.tokenizer.inlineText(e, o, cn)) e = e.substring(t.raw.length), c = t.raw.slice(-1), r = !0, n.push(t);
          else if (e) {
            var p = "Infinite loop on byte: " + e.charCodeAt(0);
            if (this.options.silent) {
              console.error(p);
              break
            }
            throw new Error(p)
          }
        } else e = e.substring(t.raw.length), n.push(t);
        return n
      }, Object.defineProperties(i, e), i
    }(),
    pn = we.defaults,
    dn = He,
    gn = Me,
    sn = function () {
      function e(e) {
        this.options = e || pn
      }
      return e.prototype.code = function (e, n, i) {
        var o = (n || "").match(/\S*/)[0];
        return !this.options.highlight || null != (n = this.options.highlight(e, o)) && n !== e && (i = !0, e = n), e = e.replace(/\n$/, "") + "\n", o ? '<pre><code class="' + this.options.langPrefix + gn(o, !0) + '">' + (i ? e : gn(e, !0)) + "</code></pre>\n" : "<pre><code>" + (i ? e : gn(e, !0)) + "</code></pre>\n"
      }, e.prototype.blockquote = function (e) {
        return "<blockquote>\n" + e + "</blockquote>\n"
      }, e.prototype.html = function (e) {
        return e
      }, e.prototype.heading = function (e, n, i, o) {
        return this.options.headerIds ? "<h" + n + ' id="' + this.options.headerPrefix + o.slug(i) + '">' + e + "</h" + n + ">\n" : "<h" + n + ">" + e + "</h" + n + ">\n"
      }, e.prototype.hr = function () {
        return this.options.xhtml ? "<hr/>\n" : "<hr>\n"
      }, e.prototype.list = function (e, n, i) {
        var o = n ? "ol" : "ul";
        return "<" + o + (n && 1 !== i ? ' start="' + i + '"' : "") + ">\n" + e + "</" + o + ">\n"
      }, e.prototype.listitem = function (e) {
        return "<li>" + e + "</li>\n"
      }, e.prototype.checkbox = function (e) {
        return "<input " + (e ? 'checked="" ' : "") + 'disabled="" type="checkbox"' + (this.options.xhtml ? " /" : "") + "> "
      }, e.prototype.paragraph = function (e) {
        return "<p>" + e + "</p>\n"
      }, e.prototype.table = function (e, n) {
        return "<table>\n<thead>\n" + e + "</thead>\n" + (n = n && "<tbody>" + n + "</tbody>") + "</table>\n"
      }, e.prototype.tablerow = function (e) {
        return "<tr>\n" + e + "</tr>\n"
      }, e.prototype.tablecell = function (e, n) {
        var i = n.header ? "th" : "td";
        return (n.align ? "<" + i + ' align="' + n.align + '">' : "<" + i + ">") + e + "</" + i + ">\n"
      }, e.prototype.strong = function (e) {
        return "<strong>" + e + "</strong>"
      }, e.prototype.em = function (e) {
        return "<em>" + e + "</em>"
      }, e.prototype.codespan = function (e) {
        return "<code>" + e + "</code>"
      }, e.prototype.br = function () {
        return this.options.xhtml ? "<br/>" : "<br>"
      }, e.prototype.del = function (e) {
        return "<del>" + e + "</del>"
      }, e.prototype.link = function (e, n, i) {
        if (null === (e = dn(this.options.sanitize, this.options.baseUrl, e))) return i;
        e = '<a href="' + gn(e) + '"';
        return n && (e += ' title="' + n + '"'), e += ">" + i + "</a>"
      }, e.prototype.image = function (e, n, i) {
        if (null === (e = dn(this.options.sanitize, this.options.baseUrl, e))) return i;
        i = '<img src="' + e + '" alt="' + i + '"';
        return n && (i += ' title="' + n + '"'), i += this.options.xhtml ? "/>" : ">"
      }, e.prototype.text = function (e) {
        return e
      }, e
    }(),
    ln = function () {
      function e() {}
      return e.prototype.strong = function (e) {
        return e
      }, e.prototype.em = function (e) {
        return e
      }, e.prototype.codespan = function (e) {
        return e
      }, e.prototype.del = function (e) {
        return e
      }, e.prototype.html = function (e) {
        return e
      }, e.prototype.text = function (e) {
        return e
      }, e.prototype.link = function (e, n, i) {
        return "" + i
      }, e.prototype.image = function (e, n, i) {
        return "" + i
      }, e.prototype.br = function () {
        return ""
      }, e
    }(),
    vn = function () {
      function e() {
        this.seen = {}
      }
      return e.prototype.serialize = function (e) {
        return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi, "").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, "").replace(/\s/g, "-")
      }, e.prototype.getNextSafeSlug = function (e, n) {
        var i = e,
          o = 0;
        if (this.seen.hasOwnProperty(i))
          for (o = this.seen[e]; i = e + "-" + ++o, this.seen.hasOwnProperty(i););
        return n || (this.seen[e] = o, this.seen[i] = 0), i
      }, e.prototype.slug = function (e, n) {
        void 0 === n && (n = {});
        e = this.serialize(e);
        return this.getNextSafeSlug(e, n.dryrun)
      }, e
    }(),
    hn = we.defaults,
    _n = Ie,
    mn = function () {
      function i(e) {
        this.options = e || hn, this.options.renderer = this.options.renderer || new sn, this.renderer = this.options.renderer, this.renderer.options = this.options, this.textRenderer = new ln, this.slugger = new vn
      }
      return i.parse = function (e, n) {
        return new i(n).parse(e)
      }, i.parseInline = function (e, n) {
        return new i(n).parseInline(e)
      }, i.prototype.parse = function (e, n) {
        void 0 === n && (n = !0);
        for (var i, o, t, a, r, c, u, f, p, d, g, s, l, v, h, _ = "", m = e.length, b = 0; b < m; b++) switch ((f = e[b]).type) {
          case "space":
            continue;
          case "hr":
            _ += this.renderer.hr();
            continue;
          case "heading":
            _ += this.renderer.heading(this.parseInline(f.tokens), f.depth, _n(this.parseInline(f.tokens, this.textRenderer)), this.slugger);
            continue;
          case "code":
            _ += this.renderer.code(f.text, f.lang, f.escaped);
            continue;
          case "table":
            for (c = p = "", t = f.header.length, i = 0; i < t; i++) c += this.renderer.tablecell(this.parseInline(f.tokens.header[i]), {
              header: !0,
              align: f.align[i]
            });
            for (p += this.renderer.tablerow(c), u = "", t = f.cells.length, i = 0; i < t; i++) {
              for (c = "", a = (r = f.tokens.cells[i]).length, o = 0; o < a; o++) c += this.renderer.tablecell(this.parseInline(r[o]), {
                header: !1,
                align: f.align[o]
              });
              u += this.renderer.tablerow(c)
            }
            _ += this.renderer.table(p, u);
            continue;
          case "blockquote":
            u = this.parse(f.tokens), _ += this.renderer.blockquote(u);
            continue;
          case "list":
            for (p = f.ordered, k = f.start, d = f.loose, t = f.items.length, u = "", i = 0; i < t; i++) l = (s = f.items[i]).checked, v = s.task, g = "", s.task && (h = this.renderer.checkbox(l), d ? 0 < s.tokens.length && "text" === s.tokens[0].type ? (s.tokens[0].text = h + " " + s.tokens[0].text, s.tokens[0].tokens && 0 < s.tokens[0].tokens.length && "text" === s.tokens[0].tokens[0].type && (s.tokens[0].tokens[0].text = h + " " + s.tokens[0].tokens[0].text)) : s.tokens.unshift({
              type: "text",
              text: h
            }) : g += h), g += this.parse(s.tokens, d), u += this.renderer.listitem(g, v, l);
            _ += this.renderer.list(u, p, k);
            continue;
          case "html":
            _ += this.renderer.html(f.text);
            continue;
          case "paragraph":
            _ += this.renderer.paragraph(this.parseInline(f.tokens));
            continue;
          case "text":
            for (u = f.tokens ? this.parseInline(f.tokens) : f.text; b + 1 < m && "text" === e[b + 1].type;) u += "\n" + ((f = e[++b]).tokens ? this.parseInline(f.tokens) : f.text);
            _ += n ? this.renderer.paragraph(u) : u;
            continue;
          default:
            var k = 'Token with "' + f.type + '" type was not found.';
            if (this.options.silent) return void console.error(k);
            throw new Error(k)
        }
        return _
      }, i.prototype.parseInline = function (e, n) {
        n = n || this.renderer;
        for (var i, o = "", t = e.length, a = 0; a < t; a++) switch ((i = e[a]).type) {
          case "escape":
            o += n.text(i.text);
            break;
          case "html":
            o += n.html(i.text);
            break;
          case "link":
            o += n.link(i.href, i.title, this.parseInline(i.tokens, n));
            break;
          case "image":
            o += n.image(i.href, i.title, i.text);
            break;
          case "strong":
            o += n.strong(this.parseInline(i.tokens, n));
            break;
          case "em":
            o += n.em(this.parseInline(i.tokens, n));
            break;
          case "codespan":
            o += n.codespan(i.text);
            break;
          case "br":
            o += n.br();
            break;
          case "del":
            o += n.del(this.parseInline(i.tokens, n));
            break;
          case "text":
            o += n.text(i.text);
            break;
          default:
            var r = 'Token with "' + i.type + '" type was not found.';
            if (this.options.silent) return void console.error(r);
            throw new Error(r)
        }
        return o
      }, i
    }(),
    bn = Ue,
    kn = Ye,
    wn = Me,
    Me = we.getDefaults,
    yn = we.changeDefaults,
    we = we.defaults;

  function xn(e, i, o) {
    if (null == e) throw new Error("marked(): input parameter is undefined or null");
    if ("string" != typeof e) throw new Error("marked(): input parameter is of type " + Object.prototype.toString.call(e) + ", string expected");
    if ("function" == typeof i && (o = i, i = null), i = bn({}, xn.defaults, i || {}), kn(i), o) {
      var t, a = i.highlight;
      try {
        t = fn.lex(e, i)
      } catch (e) {
        return o(e)
      }

      function r(n) {
        var e;
        if (!n) try {
          e = mn.parse(t, i)
        } catch (e) {
          n = e
        }
        return i.highlight = a, n ? o(n) : o(null, e)
      }
      if (!a || a.length < 3) return r();
      if (delete i.highlight, !t.length) return r();
      var c = 0;
      return xn.walkTokens(t, function (i) {
        "code" === i.type && (c++, setTimeout(function () {
          a(i.text, i.lang, function (e, n) {
            return e ? r(e) : (null != n && n !== i.text && (i.text = n, i.escaped = !0), void(0 === --c && r()))
          })
        }, 0))
      }), void(0 === c && r())
    }
    try {
      var n = fn.lex(e, i);
      return i.walkTokens && xn.walkTokens(n, i.walkTokens), mn.parse(n, i)
    } catch (e) {
      if (e.message += "\nPlease report this to https://github.com/markedjs/marked.", i.silent) return "<p>An error occurred:</p><pre>" + wn(e.message + "", !0) + "</pre>";
      throw e
    }
  }
  xn.options = xn.setOptions = function (e) {
    return bn(xn.defaults, e), yn(xn.defaults), xn
  }, xn.getDefaults = Me, xn.defaults = we, xn.use = function (a) {
    var n, e = bn({}, a);
    if (a.renderer) {
      var i, r = xn.defaults.renderer || new sn;
      for (i in a.renderer) ! function (o) {
        var t = r[o];
        r[o] = function () {
          for (var e = [], n = arguments.length; n--;) e[n] = arguments[n];
          var i = a.renderer[o].apply(r, e);
          return i = !1 === i ? t.apply(r, e) : i
        }
      }(i);
      e.renderer = r
    }
    if (a.tokenizer) {
      var t, c = xn.defaults.tokenizer || new nn;
      for (t in a.tokenizer) ! function () {
        var o = c[t];
        c[t] = function () {
          for (var e = [], n = arguments.length; n--;) e[n] = arguments[n];
          var i = a.tokenizer[t].apply(c, e);
          return i = !1 === i ? o.apply(c, e) : i
        }
      }();
      e.tokenizer = c
    }
    a.walkTokens && (n = xn.defaults.walkTokens, e.walkTokens = function (e) {
      a.walkTokens(e), n && n(e)
    }), xn.setOptions(e)
  }, xn.walkTokens = function (e, n) {
    for (var i = 0, o = e; i < o.length; i += 1) {
      var t = o[i];
      switch (n(t), t.type) {
        case "table":
          for (var a = 0, r = t.tokens.header; a < r.length; a += 1) {
            var c = r[a];
            xn.walkTokens(c, n)
          }
          for (var u = 0, f = t.tokens.cells; u < f.length; u += 1)
            for (var p = 0, d = f[u]; p < d.length; p += 1) {
              var g = d[p];
              xn.walkTokens(g, n)
            }
          break;
        case "list":
          xn.walkTokens(t.items, n);
          break;
        default:
          t.tokens && xn.walkTokens(t.tokens, n)
      }
    }
  }, xn.parseInline = function (e, n) {
    if (null == e) throw new Error("marked.parseInline(): input parameter is undefined or null");
    if ("string" != typeof e) throw new Error("marked.parseInline(): input parameter is of type " + Object.prototype.toString.call(e) + ", string expected");
    n = bn({}, xn.defaults, n || {}), kn(n);
    try {
      var i = fn.lexInline(e, n);
      return n.walkTokens && xn.walkTokens(i, n.walkTokens), mn.parseInline(i, n)
    } catch (e) {
      if (e.message += "\nPlease report this to https://github.com/markedjs/marked.", n.silent) return "<p>An error occurred:</p><pre>" + wn(e.message + "", !0) + "</pre>";
      throw e
    }
  }, xn.Parser = mn, xn.parser = mn.parse, xn.Renderer = sn, xn.TextRenderer = ln, xn.Lexer = fn, xn.lexer = fn.lex, xn.Tokenizer = nn, xn.Slugger = vn;
  var Sn = xn.parse = xn;

  function An(e, i) {
    if (void 0 === i && (i = '<ul class="app-sub-sidebar">{inner}</ul>'), !e || !e.length) return "";
    var o = "";
    return e.forEach(function (e) {
      var n = e.title.replace(/(<([^>]+)>)/g, "");
      o += '<li><a class="section-link" href="' + e.slug + '" title="' + n + '">' + e.title + "</a></li>", e.children && (o += An(e.children, i))
    }), i.replace("{inner}", o)
  }

  function $n(e, n) {
    return '<p class="' + e + '">' + n.slice(5).trim() + "</p>"
  }

  function zn(e, o) {
    var t = [],
      a = {};
    return e.forEach(function (e) {
      var n = e.level || 1,
        i = n - 1;
      o < n || (a[i] ? a[i].children = (a[i].children || []).concat(e) : t.push(e), a[n] = e)
    }), t
  }
  var Fn = {},
    En = /[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g;

  function Rn(e) {
    return e.toLowerCase()
  }

  function Tn(e) {
    if ("string" != typeof e) return "";
    var n = e.trim().replace(/[A-Z]+/g, Rn).replace(/<[^>]+>/g, "").replace(En, "").replace(/\s/g, "-").replace(/-+/g, "-").replace(/^(\d)/, "_$1"),
      e = Fn[n],
      e = u.call(Fn, n) ? e + 1 : 0;
    return n = (Fn[n] = e) ? n + "-" + e : n
  }
  Tn.clear = function () {
    Fn = {}
  };
  var Cn = {
    baseURL: "https://github.githubassets.com/images/icons/emoji/",
    data: {
      100: "unicode/1f4af.png?v8",
      1234: "unicode/1f522.png?v8",
      "+1": "unicode/1f44d.png?v8",
      "-1": "unicode/1f44e.png?v8",
      "1st_place_medal": "unicode/1f947.png?v8",
      "2nd_place_medal": "unicode/1f948.png?v8",
      "3rd_place_medal": "unicode/1f949.png?v8",
      "8ball": "unicode/1f3b1.png?v8",
      a: "unicode/1f170.png?v8",
      ab: "unicode/1f18e.png?v8",
      abacus: "unicode/1f9ee.png?v8",
      abc: "unicode/1f524.png?v8",
      abcd: "unicode/1f521.png?v8",
      accept: "unicode/1f251.png?v8",
      accessibility: "accessibility.png?v8",
      accordion: "unicode/1fa97.png?v8",
      adhesive_bandage: "unicode/1fa79.png?v8",
      adult: "unicode/1f9d1.png?v8",
      aerial_tramway: "unicode/1f6a1.png?v8",
      afghanistan: "unicode/1f1e6-1f1eb.png?v8",
      airplane: "unicode/2708.png?v8",
      aland_islands: "unicode/1f1e6-1f1fd.png?v8",
      alarm_clock: "unicode/23f0.png?v8",
      albania: "unicode/1f1e6-1f1f1.png?v8",
      alembic: "unicode/2697.png?v8",
      algeria: "unicode/1f1e9-1f1ff.png?v8",
      alien: "unicode/1f47d.png?v8",
      ambulance: "unicode/1f691.png?v8",
      american_samoa: "unicode/1f1e6-1f1f8.png?v8",
      amphora: "unicode/1f3fa.png?v8",
      anatomical_heart: "unicode/1fac0.png?v8",
      anchor: "unicode/2693.png?v8",
      andorra: "unicode/1f1e6-1f1e9.png?v8",
      angel: "unicode/1f47c.png?v8",
      anger: "unicode/1f4a2.png?v8",
      angola: "unicode/1f1e6-1f1f4.png?v8",
      angry: "unicode/1f620.png?v8",
      anguilla: "unicode/1f1e6-1f1ee.png?v8",
      anguished: "unicode/1f627.png?v8",
      ant: "unicode/1f41c.png?v8",
      antarctica: "unicode/1f1e6-1f1f6.png?v8",
      antigua_barbuda: "unicode/1f1e6-1f1ec.png?v8",
      apple: "unicode/1f34e.png?v8",
      aquarius: "unicode/2652.png?v8",
      argentina: "unicode/1f1e6-1f1f7.png?v8",
      aries: "unicode/2648.png?v8",
      armenia: "unicode/1f1e6-1f1f2.png?v8",
      arrow_backward: "unicode/25c0.png?v8",
      arrow_double_down: "unicode/23ec.png?v8",
      arrow_double_up: "unicode/23eb.png?v8",
      arrow_down: "unicode/2b07.png?v8",
      arrow_down_small: "unicode/1f53d.png?v8",
      arrow_forward: "unicode/25b6.png?v8",
      arrow_heading_down: "unicode/2935.png?v8",
      arrow_heading_up: "unicode/2934.png?v8",
      arrow_left: "unicode/2b05.png?v8",
      arrow_lower_left: "unicode/2199.png?v8",
      arrow_lower_right: "unicode/2198.png?v8",
      arrow_right: "unicode/27a1.png?v8",
      arrow_right_hook: "unicode/21aa.png?v8",
      arrow_up: "unicode/2b06.png?v8",
      arrow_up_down: "unicode/2195.png?v8",
      arrow_up_small: "unicode/1f53c.png?v8",
      arrow_upper_left: "unicode/2196.png?v8",
      arrow_upper_right: "unicode/2197.png?v8",
      arrows_clockwise: "unicode/1f503.png?v8",
      arrows_counterclockwise: "unicode/1f504.png?v8",
      art: "unicode/1f3a8.png?v8",
      articulated_lorry: "unicode/1f69b.png?v8",
      artificial_satellite: "unicode/1f6f0.png?v8",
      artist: "unicode/1f9d1-1f3a8.png?v8",
      aruba: "unicode/1f1e6-1f1fc.png?v8",
      ascension_island: "unicode/1f1e6-1f1e8.png?v8",
      asterisk: "unicode/002a-20e3.png?v8",
      astonished: "unicode/1f632.png?v8",
      astronaut: "unicode/1f9d1-1f680.png?v8",
      athletic_shoe: "unicode/1f45f.png?v8",
      atm: "unicode/1f3e7.png?v8",
      atom: "atom.png?v8",
      atom_symbol: "unicode/269b.png?v8",
      australia: "unicode/1f1e6-1f1fa.png?v8",
      austria: "unicode/1f1e6-1f1f9.png?v8",
      auto_rickshaw: "unicode/1f6fa.png?v8",
      avocado: "unicode/1f951.png?v8",
      axe: "unicode/1fa93.png?v8",
      azerbaijan: "unicode/1f1e6-1f1ff.png?v8",
      b: "unicode/1f171.png?v8",
      baby: "unicode/1f476.png?v8",
      baby_bottle: "unicode/1f37c.png?v8",
      baby_chick: "unicode/1f424.png?v8",
      baby_symbol: "unicode/1f6bc.png?v8",
      back: "unicode/1f519.png?v8",
      bacon: "unicode/1f953.png?v8",
      badger: "unicode/1f9a1.png?v8",
      badminton: "unicode/1f3f8.png?v8",
      bagel: "unicode/1f96f.png?v8",
      baggage_claim: "unicode/1f6c4.png?v8",
      baguette_bread: "unicode/1f956.png?v8",
      bahamas: "unicode/1f1e7-1f1f8.png?v8",
      bahrain: "unicode/1f1e7-1f1ed.png?v8",
      balance_scale: "unicode/2696.png?v8",
      bald_man: "unicode/1f468-1f9b2.png?v8",
      bald_woman: "unicode/1f469-1f9b2.png?v8",
      ballet_shoes: "unicode/1fa70.png?v8",
      balloon: "unicode/1f388.png?v8",
      ballot_box: "unicode/1f5f3.png?v8",
      ballot_box_with_check: "unicode/2611.png?v8",
      bamboo: "unicode/1f38d.png?v8",
      banana: "unicode/1f34c.png?v8",
      bangbang: "unicode/203c.png?v8",
      bangladesh: "unicode/1f1e7-1f1e9.png?v8",
      banjo: "unicode/1fa95.png?v8",
      bank: "unicode/1f3e6.png?v8",
      bar_chart: "unicode/1f4ca.png?v8",
      barbados: "unicode/1f1e7-1f1e7.png?v8",
      barber: "unicode/1f488.png?v8",
      baseball: "unicode/26be.png?v8",
      basecamp: "basecamp.png?v8",
      basecampy: "basecampy.png?v8",
      basket: "unicode/1f9fa.png?v8",
      basketball: "unicode/1f3c0.png?v8",
      basketball_man: "unicode/26f9-2642.png?v8",
      basketball_woman: "unicode/26f9-2640.png?v8",
      bat: "unicode/1f987.png?v8",
      bath: "unicode/1f6c0.png?v8",
      bathtub: "unicode/1f6c1.png?v8",
      battery: "unicode/1f50b.png?v8",
      beach_umbrella: "unicode/1f3d6.png?v8",
      bear: "unicode/1f43b.png?v8",
      bearded_person: "unicode/1f9d4.png?v8",
      beaver: "unicode/1f9ab.png?v8",
      bed: "unicode/1f6cf.png?v8",
      bee: "unicode/1f41d.png?v8",
      beer: "unicode/1f37a.png?v8",
      beers: "unicode/1f37b.png?v8",
      beetle: "unicode/1fab2.png?v8",
      beginner: "unicode/1f530.png?v8",
      belarus: "unicode/1f1e7-1f1fe.png?v8",
      belgium: "unicode/1f1e7-1f1ea.png?v8",
      belize: "unicode/1f1e7-1f1ff.png?v8",
      bell: "unicode/1f514.png?v8",
      bell_pepper: "unicode/1fad1.png?v8",
      bellhop_bell: "unicode/1f6ce.png?v8",
      benin: "unicode/1f1e7-1f1ef.png?v8",
      bento: "unicode/1f371.png?v8",
      bermuda: "unicode/1f1e7-1f1f2.png?v8",
      beverage_box: "unicode/1f9c3.png?v8",
      bhutan: "unicode/1f1e7-1f1f9.png?v8",
      bicyclist: "unicode/1f6b4.png?v8",
      bike: "unicode/1f6b2.png?v8",
      biking_man: "unicode/1f6b4-2642.png?v8",
      biking_woman: "unicode/1f6b4-2640.png?v8",
      bikini: "unicode/1f459.png?v8",
      billed_cap: "unicode/1f9e2.png?v8",
      biohazard: "unicode/2623.png?v8",
      bird: "unicode/1f426.png?v8",
      birthday: "unicode/1f382.png?v8",
      bison: "unicode/1f9ac.png?v8",
      black_cat: "unicode/1f408-2b1b.png?v8",
      black_circle: "unicode/26ab.png?v8",
      black_flag: "unicode/1f3f4.png?v8",
      black_heart: "unicode/1f5a4.png?v8",
      black_joker: "unicode/1f0cf.png?v8",
      black_large_square: "unicode/2b1b.png?v8",
      black_medium_small_square: "unicode/25fe.png?v8",
      black_medium_square: "unicode/25fc.png?v8",
      black_nib: "unicode/2712.png?v8",
      black_small_square: "unicode/25aa.png?v8",
      black_square_button: "unicode/1f532.png?v8",
      blond_haired_man: "unicode/1f471-2642.png?v8",
      blond_haired_person: "unicode/1f471.png?v8",
      blond_haired_woman: "unicode/1f471-2640.png?v8",
      blonde_woman: "unicode/1f471-2640.png?v8",
      blossom: "unicode/1f33c.png?v8",
      blowfish: "unicode/1f421.png?v8",
      blue_book: "unicode/1f4d8.png?v8",
      blue_car: "unicode/1f699.png?v8",
      blue_heart: "unicode/1f499.png?v8",
      blue_square: "unicode/1f7e6.png?v8",
      blueberries: "unicode/1fad0.png?v8",
      blush: "unicode/1f60a.png?v8",
      boar: "unicode/1f417.png?v8",
      boat: "unicode/26f5.png?v8",
      bolivia: "unicode/1f1e7-1f1f4.png?v8",
      bomb: "unicode/1f4a3.png?v8",
      bone: "unicode/1f9b4.png?v8",
      book: "unicode/1f4d6.png?v8",
      bookmark: "unicode/1f516.png?v8",
      bookmark_tabs: "unicode/1f4d1.png?v8",
      books: "unicode/1f4da.png?v8",
      boom: "unicode/1f4a5.png?v8",
      boomerang: "unicode/1fa83.png?v8",
      boot: "unicode/1f462.png?v8",
      bosnia_herzegovina: "unicode/1f1e7-1f1e6.png?v8",
      botswana: "unicode/1f1e7-1f1fc.png?v8",
      bouncing_ball_man: "unicode/26f9-2642.png?v8",
      bouncing_ball_person: "unicode/26f9.png?v8",
      bouncing_ball_woman: "unicode/26f9-2640.png?v8",
      bouquet: "unicode/1f490.png?v8",
      bouvet_island: "unicode/1f1e7-1f1fb.png?v8",
      bow: "unicode/1f647.png?v8",
      bow_and_arrow: "unicode/1f3f9.png?v8",
      bowing_man: "unicode/1f647-2642.png?v8",
      bowing_woman: "unicode/1f647-2640.png?v8",
      bowl_with_spoon: "unicode/1f963.png?v8",
      bowling: "unicode/1f3b3.png?v8",
      bowtie: "bowtie.png?v8",
      boxing_glove: "unicode/1f94a.png?v8",
      boy: "unicode/1f466.png?v8",
      brain: "unicode/1f9e0.png?v8",
      brazil: "unicode/1f1e7-1f1f7.png?v8",
      bread: "unicode/1f35e.png?v8",
      breast_feeding: "unicode/1f931.png?v8",
      bricks: "unicode/1f9f1.png?v8",
      bride_with_veil: "unicode/1f470-2640.png?v8",
      bridge_at_night: "unicode/1f309.png?v8",
      briefcase: "unicode/1f4bc.png?v8",
      british_indian_ocean_territory: "unicode/1f1ee-1f1f4.png?v8",
      british_virgin_islands: "unicode/1f1fb-1f1ec.png?v8",
      broccoli: "unicode/1f966.png?v8",
      broken_heart: "unicode/1f494.png?v8",
      broom: "unicode/1f9f9.png?v8",
      brown_circle: "unicode/1f7e4.png?v8",
      brown_heart: "unicode/1f90e.png?v8",
      brown_square: "unicode/1f7eb.png?v8",
      brunei: "unicode/1f1e7-1f1f3.png?v8",
      bubble_tea: "unicode/1f9cb.png?v8",
      bucket: "unicode/1faa3.png?v8",
      bug: "unicode/1f41b.png?v8",
      building_construction: "unicode/1f3d7.png?v8",
      bulb: "unicode/1f4a1.png?v8",
      bulgaria: "unicode/1f1e7-1f1ec.png?v8",
      bullettrain_front: "unicode/1f685.png?v8",
      bullettrain_side: "unicode/1f684.png?v8",
      burkina_faso: "unicode/1f1e7-1f1eb.png?v8",
      burrito: "unicode/1f32f.png?v8",
      burundi: "unicode/1f1e7-1f1ee.png?v8",
      bus: "unicode/1f68c.png?v8",
      business_suit_levitating: "unicode/1f574.png?v8",
      busstop: "unicode/1f68f.png?v8",
      bust_in_silhouette: "unicode/1f464.png?v8",
      busts_in_silhouette: "unicode/1f465.png?v8",
      butter: "unicode/1f9c8.png?v8",
      butterfly: "unicode/1f98b.png?v8",
      cactus: "unicode/1f335.png?v8",
      cake: "unicode/1f370.png?v8",
      calendar: "unicode/1f4c6.png?v8",
      call_me_hand: "unicode/1f919.png?v8",
      calling: "unicode/1f4f2.png?v8",
      cambodia: "unicode/1f1f0-1f1ed.png?v8",
      camel: "unicode/1f42b.png?v8",
      camera: "unicode/1f4f7.png?v8",
      camera_flash: "unicode/1f4f8.png?v8",
      cameroon: "unicode/1f1e8-1f1f2.png?v8",
      camping: "unicode/1f3d5.png?v8",
      canada: "unicode/1f1e8-1f1e6.png?v8",
      canary_islands: "unicode/1f1ee-1f1e8.png?v8",
      cancer: "unicode/264b.png?v8",
      candle: "unicode/1f56f.png?v8",
      candy: "unicode/1f36c.png?v8",
      canned_food: "unicode/1f96b.png?v8",
      canoe: "unicode/1f6f6.png?v8",
      cape_verde: "unicode/1f1e8-1f1fb.png?v8",
      capital_abcd: "unicode/1f520.png?v8",
      capricorn: "unicode/2651.png?v8",
      car: "unicode/1f697.png?v8",
      card_file_box: "unicode/1f5c3.png?v8",
      card_index: "unicode/1f4c7.png?v8",
      card_index_dividers: "unicode/1f5c2.png?v8",
      caribbean_netherlands: "unicode/1f1e7-1f1f6.png?v8",
      carousel_horse: "unicode/1f3a0.png?v8",
      carpentry_saw: "unicode/1fa9a.png?v8",
      carrot: "unicode/1f955.png?v8",
      cartwheeling: "unicode/1f938.png?v8",
      cat: "unicode/1f431.png?v8",
      cat2: "unicode/1f408.png?v8",
      cayman_islands: "unicode/1f1f0-1f1fe.png?v8",
      cd: "unicode/1f4bf.png?v8",
      central_african_republic: "unicode/1f1e8-1f1eb.png?v8",
      ceuta_melilla: "unicode/1f1ea-1f1e6.png?v8",
      chad: "unicode/1f1f9-1f1e9.png?v8",
      chains: "unicode/26d3.png?v8",
      chair: "unicode/1fa91.png?v8",
      champagne: "unicode/1f37e.png?v8",
      chart: "unicode/1f4b9.png?v8",
      chart_with_downwards_trend: "unicode/1f4c9.png?v8",
      chart_with_upwards_trend: "unicode/1f4c8.png?v8",
      checkered_flag: "unicode/1f3c1.png?v8",
      cheese: "unicode/1f9c0.png?v8",
      cherries: "unicode/1f352.png?v8",
      cherry_blossom: "unicode/1f338.png?v8",
      chess_pawn: "unicode/265f.png?v8",
      chestnut: "unicode/1f330.png?v8",
      chicken: "unicode/1f414.png?v8",
      child: "unicode/1f9d2.png?v8",
      children_crossing: "unicode/1f6b8.png?v8",
      chile: "unicode/1f1e8-1f1f1.png?v8",
      chipmunk: "unicode/1f43f.png?v8",
      chocolate_bar: "unicode/1f36b.png?v8",
      chopsticks: "unicode/1f962.png?v8",
      christmas_island: "unicode/1f1e8-1f1fd.png?v8",
      christmas_tree: "unicode/1f384.png?v8",
      church: "unicode/26ea.png?v8",
      cinema: "unicode/1f3a6.png?v8",
      circus_tent: "unicode/1f3aa.png?v8",
      city_sunrise: "unicode/1f307.png?v8",
      city_sunset: "unicode/1f306.png?v8",
      cityscape: "unicode/1f3d9.png?v8",
      cl: "unicode/1f191.png?v8",
      clamp: "unicode/1f5dc.png?v8",
      clap: "unicode/1f44f.png?v8",
      clapper: "unicode/1f3ac.png?v8",
      classical_building: "unicode/1f3db.png?v8",
      climbing: "unicode/1f9d7.png?v8",
      climbing_man: "unicode/1f9d7-2642.png?v8",
      climbing_woman: "unicode/1f9d7-2640.png?v8",
      clinking_glasses: "unicode/1f942.png?v8",
      clipboard: "unicode/1f4cb.png?v8",
      clipperton_island: "unicode/1f1e8-1f1f5.png?v8",
      clock1: "unicode/1f550.png?v8",
      clock10: "unicode/1f559.png?v8",
      clock1030: "unicode/1f565.png?v8",
      clock11: "unicode/1f55a.png?v8",
      clock1130: "unicode/1f566.png?v8",
      clock12: "unicode/1f55b.png?v8",
      clock1230: "unicode/1f567.png?v8",
      clock130: "unicode/1f55c.png?v8",
      clock2: "unicode/1f551.png?v8",
      clock230: "unicode/1f55d.png?v8",
      clock3: "unicode/1f552.png?v8",
      clock330: "unicode/1f55e.png?v8",
      clock4: "unicode/1f553.png?v8",
      clock430: "unicode/1f55f.png?v8",
      clock5: "unicode/1f554.png?v8",
      clock530: "unicode/1f560.png?v8",
      clock6: "unicode/1f555.png?v8",
      clock630: "unicode/1f561.png?v8",
      clock7: "unicode/1f556.png?v8",
      clock730: "unicode/1f562.png?v8",
      clock8: "unicode/1f557.png?v8",
      clock830: "unicode/1f563.png?v8",
      clock9: "unicode/1f558.png?v8",
      clock930: "unicode/1f564.png?v8",
      closed_book: "unicode/1f4d5.png?v8",
      closed_lock_with_key: "unicode/1f510.png?v8",
      closed_umbrella: "unicode/1f302.png?v8",
      cloud: "unicode/2601.png?v8",
      cloud_with_lightning: "unicode/1f329.png?v8",
      cloud_with_lightning_and_rain: "unicode/26c8.png?v8",
      cloud_with_rain: "unicode/1f327.png?v8",
      cloud_with_snow: "unicode/1f328.png?v8",
      clown_face: "unicode/1f921.png?v8",
      clubs: "unicode/2663.png?v8",
      cn: "unicode/1f1e8-1f1f3.png?v8",
      coat: "unicode/1f9e5.png?v8",
      cockroach: "unicode/1fab3.png?v8",
      cocktail: "unicode/1f378.png?v8",
      coconut: "unicode/1f965.png?v8",
      cocos_islands: "unicode/1f1e8-1f1e8.png?v8",
      coffee: "unicode/2615.png?v8",
      coffin: "unicode/26b0.png?v8",
      coin: "unicode/1fa99.png?v8",
      cold_face: "unicode/1f976.png?v8",
      cold_sweat: "unicode/1f630.png?v8",
      collision: "unicode/1f4a5.png?v8",
      colombia: "unicode/1f1e8-1f1f4.png?v8",
      comet: "unicode/2604.png?v8",
      comoros: "unicode/1f1f0-1f1f2.png?v8",
      compass: "unicode/1f9ed.png?v8",
      computer: "unicode/1f4bb.png?v8",
      computer_mouse: "unicode/1f5b1.png?v8",
      confetti_ball: "unicode/1f38a.png?v8",
      confounded: "unicode/1f616.png?v8",
      confused: "unicode/1f615.png?v8",
      congo_brazzaville: "unicode/1f1e8-1f1ec.png?v8",
      congo_kinshasa: "unicode/1f1e8-1f1e9.png?v8",
      congratulations: "unicode/3297.png?v8",
      construction: "unicode/1f6a7.png?v8",
      construction_worker: "unicode/1f477.png?v8",
      construction_worker_man: "unicode/1f477-2642.png?v8",
      construction_worker_woman: "unicode/1f477-2640.png?v8",
      control_knobs: "unicode/1f39b.png?v8",
      convenience_store: "unicode/1f3ea.png?v8",
      cook: "unicode/1f9d1-1f373.png?v8",
      cook_islands: "unicode/1f1e8-1f1f0.png?v8",
      cookie: "unicode/1f36a.png?v8",
      cool: "unicode/1f192.png?v8",
      cop: "unicode/1f46e.png?v8",
      copyright: "unicode/00a9.png?v8",
      corn: "unicode/1f33d.png?v8",
      costa_rica: "unicode/1f1e8-1f1f7.png?v8",
      cote_divoire: "unicode/1f1e8-1f1ee.png?v8",
      couch_and_lamp: "unicode/1f6cb.png?v8",
      couple: "unicode/1f46b.png?v8",
      couple_with_heart: "unicode/1f491.png?v8",
      couple_with_heart_man_man: "unicode/1f468-2764-1f468.png?v8",
      couple_with_heart_woman_man: "unicode/1f469-2764-1f468.png?v8",
      couple_with_heart_woman_woman: "unicode/1f469-2764-1f469.png?v8",
      couplekiss: "unicode/1f48f.png?v8",
      couplekiss_man_man: "unicode/1f468-2764-1f48b-1f468.png?v8",
      couplekiss_man_woman: "unicode/1f469-2764-1f48b-1f468.png?v8",
      couplekiss_woman_woman: "unicode/1f469-2764-1f48b-1f469.png?v8",
      cow: "unicode/1f42e.png?v8",
      cow2: "unicode/1f404.png?v8",
      cowboy_hat_face: "unicode/1f920.png?v8",
      crab: "unicode/1f980.png?v8",
      crayon: "unicode/1f58d.png?v8",
      credit_card: "unicode/1f4b3.png?v8",
      crescent_moon: "unicode/1f319.png?v8",
      cricket: "unicode/1f997.png?v8",
      cricket_game: "unicode/1f3cf.png?v8",
      croatia: "unicode/1f1ed-1f1f7.png?v8",
      crocodile: "unicode/1f40a.png?v8",
      croissant: "unicode/1f950.png?v8",
      crossed_fingers: "unicode/1f91e.png?v8",
      crossed_flags: "unicode/1f38c.png?v8",
      crossed_swords: "unicode/2694.png?v8",
      crown: "unicode/1f451.png?v8",
      cry: "unicode/1f622.png?v8",
      crying_cat_face: "unicode/1f63f.png?v8",
      crystal_ball: "unicode/1f52e.png?v8",
      cuba: "unicode/1f1e8-1f1fa.png?v8",
      cucumber: "unicode/1f952.png?v8",
      cup_with_straw: "unicode/1f964.png?v8",
      cupcake: "unicode/1f9c1.png?v8",
      cupid: "unicode/1f498.png?v8",
      curacao: "unicode/1f1e8-1f1fc.png?v8",
      curling_stone: "unicode/1f94c.png?v8",
      curly_haired_man: "unicode/1f468-1f9b1.png?v8",
      curly_haired_woman: "unicode/1f469-1f9b1.png?v8",
      curly_loop: "unicode/27b0.png?v8",
      currency_exchange: "unicode/1f4b1.png?v8",
      curry: "unicode/1f35b.png?v8",
      cursing_face: "unicode/1f92c.png?v8",
      custard: "unicode/1f36e.png?v8",
      customs: "unicode/1f6c3.png?v8",
      cut_of_meat: "unicode/1f969.png?v8",
      cyclone: "unicode/1f300.png?v8",
      cyprus: "unicode/1f1e8-1f1fe.png?v8",
      czech_republic: "unicode/1f1e8-1f1ff.png?v8",
      dagger: "unicode/1f5e1.png?v8",
      dancer: "unicode/1f483.png?v8",
      dancers: "unicode/1f46f.png?v8",
      dancing_men: "unicode/1f46f-2642.png?v8",
      dancing_women: "unicode/1f46f-2640.png?v8",
      dango: "unicode/1f361.png?v8",
      dark_sunglasses: "unicode/1f576.png?v8",
      dart: "unicode/1f3af.png?v8",
      dash: "unicode/1f4a8.png?v8",
      date: "unicode/1f4c5.png?v8",
      de: "unicode/1f1e9-1f1ea.png?v8",
      deaf_man: "unicode/1f9cf-2642.png?v8",
      deaf_person: "unicode/1f9cf.png?v8",
      deaf_woman: "unicode/1f9cf-2640.png?v8",
      deciduous_tree: "unicode/1f333.png?v8",
      deer: "unicode/1f98c.png?v8",
      denmark: "unicode/1f1e9-1f1f0.png?v8",
      department_store: "unicode/1f3ec.png?v8",
      dependabot: "dependabot.png?v8",
      derelict_house: "unicode/1f3da.png?v8",
      desert: "unicode/1f3dc.png?v8",
      desert_island: "unicode/1f3dd.png?v8",
      desktop_computer: "unicode/1f5a5.png?v8",
      detective: "unicode/1f575.png?v8",
      diamond_shape_with_a_dot_inside: "unicode/1f4a0.png?v8",
      diamonds: "unicode/2666.png?v8",
      diego_garcia: "unicode/1f1e9-1f1ec.png?v8",
      disappointed: "unicode/1f61e.png?v8",
      disappointed_relieved: "unicode/1f625.png?v8",
      disguised_face: "unicode/1f978.png?v8",
      diving_mask: "unicode/1f93f.png?v8",
      diya_lamp: "unicode/1fa94.png?v8",
      dizzy: "unicode/1f4ab.png?v8",
      dizzy_face: "unicode/1f635.png?v8",
      djibouti: "unicode/1f1e9-1f1ef.png?v8",
      dna: "unicode/1f9ec.png?v8",
      do_not_litter: "unicode/1f6af.png?v8",
      dodo: "unicode/1f9a4.png?v8",
      dog: "unicode/1f436.png?v8",
      dog2: "unicode/1f415.png?v8",
      dollar: "unicode/1f4b5.png?v8",
      dolls: "unicode/1f38e.png?v8",
      dolphin: "unicode/1f42c.png?v8",
      dominica: "unicode/1f1e9-1f1f2.png?v8",
      dominican_republic: "unicode/1f1e9-1f1f4.png?v8",
      door: "unicode/1f6aa.png?v8",
      doughnut: "unicode/1f369.png?v8",
      dove: "unicode/1f54a.png?v8",
      dragon: "unicode/1f409.png?v8",
      dragon_face: "unicode/1f432.png?v8",
      dress: "unicode/1f457.png?v8",
      dromedary_camel: "unicode/1f42a.png?v8",
      drooling_face: "unicode/1f924.png?v8",
      drop_of_blood: "unicode/1fa78.png?v8",
      droplet: "unicode/1f4a7.png?v8",
      drum: "unicode/1f941.png?v8",
      duck: "unicode/1f986.png?v8",
      dumpling: "unicode/1f95f.png?v8",
      dvd: "unicode/1f4c0.png?v8",
      "e-mail": "unicode/1f4e7.png?v8",
      eagle: "unicode/1f985.png?v8",
      ear: "unicode/1f442.png?v8",
      ear_of_rice: "unicode/1f33e.png?v8",
      ear_with_hearing_aid: "unicode/1f9bb.png?v8",
      earth_africa: "unicode/1f30d.png?v8",
      earth_americas: "unicode/1f30e.png?v8",
      earth_asia: "unicode/1f30f.png?v8",
      ecuador: "unicode/1f1ea-1f1e8.png?v8",
      egg: "unicode/1f95a.png?v8",
      eggplant: "unicode/1f346.png?v8",
      egypt: "unicode/1f1ea-1f1ec.png?v8",
      eight: "unicode/0038-20e3.png?v8",
      eight_pointed_black_star: "unicode/2734.png?v8",
      eight_spoked_asterisk: "unicode/2733.png?v8",
      eject_button: "unicode/23cf.png?v8",
      el_salvador: "unicode/1f1f8-1f1fb.png?v8",
      electric_plug: "unicode/1f50c.png?v8",
      electron: "electron.png?v8",
      elephant: "unicode/1f418.png?v8",
      elevator: "unicode/1f6d7.png?v8",
      elf: "unicode/1f9dd.png?v8",
      elf_man: "unicode/1f9dd-2642.png?v8",
      elf_woman: "unicode/1f9dd-2640.png?v8",
      email: "unicode/1f4e7.png?v8",
      end: "unicode/1f51a.png?v8",
      england: "unicode/1f3f4-e0067-e0062-e0065-e006e-e0067-e007f.png?v8",
      envelope: "unicode/2709.png?v8",
      envelope_with_arrow: "unicode/1f4e9.png?v8",
      equatorial_guinea: "unicode/1f1ec-1f1f6.png?v8",
      eritrea: "unicode/1f1ea-1f1f7.png?v8",
      es: "unicode/1f1ea-1f1f8.png?v8",
      estonia: "unicode/1f1ea-1f1ea.png?v8",
      ethiopia: "unicode/1f1ea-1f1f9.png?v8",
      eu: "unicode/1f1ea-1f1fa.png?v8",
      euro: "unicode/1f4b6.png?v8",
      european_castle: "unicode/1f3f0.png?v8",
      european_post_office: "unicode/1f3e4.png?v8",
      european_union: "unicode/1f1ea-1f1fa.png?v8",
      evergreen_tree: "unicode/1f332.png?v8",
      exclamation: "unicode/2757.png?v8",
      exploding_head: "unicode/1f92f.png?v8",
      expressionless: "unicode/1f611.png?v8",
      eye: "unicode/1f441.png?v8",
      eye_speech_bubble: "unicode/1f441-1f5e8.png?v8",
      eyeglasses: "unicode/1f453.png?v8",
      eyes: "unicode/1f440.png?v8",
      face_exhaling: "unicode/1f62e-1f4a8.png?v8",
      face_in_clouds: "unicode/1f636-1f32b.png?v8",
      face_with_head_bandage: "unicode/1f915.png?v8",
      face_with_spiral_eyes: "unicode/1f635-1f4ab.png?v8",
      face_with_thermometer: "unicode/1f912.png?v8",
      facepalm: "unicode/1f926.png?v8",
      facepunch: "unicode/1f44a.png?v8",
      factory: "unicode/1f3ed.png?v8",
      factory_worker: "unicode/1f9d1-1f3ed.png?v8",
      fairy: "unicode/1f9da.png?v8",
      fairy_man: "unicode/1f9da-2642.png?v8",
      fairy_woman: "unicode/1f9da-2640.png?v8",
      falafel: "unicode/1f9c6.png?v8",
      falkland_islands: "unicode/1f1eb-1f1f0.png?v8",
      fallen_leaf: "unicode/1f342.png?v8",
      family: "unicode/1f46a.png?v8",
      family_man_boy: "unicode/1f468-1f466.png?v8",
      family_man_boy_boy: "unicode/1f468-1f466-1f466.png?v8",
      family_man_girl: "unicode/1f468-1f467.png?v8",
      family_man_girl_boy: "unicode/1f468-1f467-1f466.png?v8",
      family_man_girl_girl: "unicode/1f468-1f467-1f467.png?v8",
      family_man_man_boy: "unicode/1f468-1f468-1f466.png?v8",
      family_man_man_boy_boy: "unicode/1f468-1f468-1f466-1f466.png?v8",
      family_man_man_girl: "unicode/1f468-1f468-1f467.png?v8",
      family_man_man_girl_boy: "unicode/1f468-1f468-1f467-1f466.png?v8",
      family_man_man_girl_girl: "unicode/1f468-1f468-1f467-1f467.png?v8",
      family_man_woman_boy: "unicode/1f468-1f469-1f466.png?v8",
      family_man_woman_boy_boy: "unicode/1f468-1f469-1f466-1f466.png?v8",
      family_man_woman_girl: "unicode/1f468-1f469-1f467.png?v8",
      family_man_woman_girl_boy: "unicode/1f468-1f469-1f467-1f466.png?v8",
      family_man_woman_girl_girl: "unicode/1f468-1f469-1f467-1f467.png?v8",
      family_woman_boy: "unicode/1f469-1f466.png?v8",
      family_woman_boy_boy: "unicode/1f469-1f466-1f466.png?v8",
      family_woman_girl: "unicode/1f469-1f467.png?v8",
      family_woman_girl_boy: "unicode/1f469-1f467-1f466.png?v8",
      family_woman_girl_girl: "unicode/1f469-1f467-1f467.png?v8",
      family_woman_woman_boy: "unicode/1f469-1f469-1f466.png?v8",
      family_woman_woman_boy_boy: "unicode/1f469-1f469-1f466-1f466.png?v8",
      family_woman_woman_girl: "unicode/1f469-1f469-1f467.png?v8",
      family_woman_woman_girl_boy: "unicode/1f469-1f469-1f467-1f466.png?v8",
      family_woman_woman_girl_girl: "unicode/1f469-1f469-1f467-1f467.png?v8",
      farmer: "unicode/1f9d1-1f33e.png?v8",
      faroe_islands: "unicode/1f1eb-1f1f4.png?v8",
      fast_forward: "unicode/23e9.png?v8",
      fax: "unicode/1f4e0.png?v8",
      fearful: "unicode/1f628.png?v8",
      feather: "unicode/1fab6.png?v8",
      feelsgood: "feelsgood.png?v8",
      feet: "unicode/1f43e.png?v8",
      female_detective: "unicode/1f575-2640.png?v8",
      female_sign: "unicode/2640.png?v8",
      ferris_wheel: "unicode/1f3a1.png?v8",
      ferry: "unicode/26f4.png?v8",
      field_hockey: "unicode/1f3d1.png?v8",
      fiji: "unicode/1f1eb-1f1ef.png?v8",
      file_cabinet: "unicode/1f5c4.png?v8",
      file_folder: "unicode/1f4c1.png?v8",
      film_projector: "unicode/1f4fd.png?v8",
      film_strip: "unicode/1f39e.png?v8",
      finland: "unicode/1f1eb-1f1ee.png?v8",
      finnadie: "finnadie.png?v8",
      fire: "unicode/1f525.png?v8",
      fire_engine: "unicode/1f692.png?v8",
      fire_extinguisher: "unicode/1f9ef.png?v8",
      firecracker: "unicode/1f9e8.png?v8",
      firefighter: "unicode/1f9d1-1f692.png?v8",
      fireworks: "unicode/1f386.png?v8",
      first_quarter_moon: "unicode/1f313.png?v8",
      first_quarter_moon_with_face: "unicode/1f31b.png?v8",
      fish: "unicode/1f41f.png?v8",
      fish_cake: "unicode/1f365.png?v8",
      fishing_pole_and_fish: "unicode/1f3a3.png?v8",
      fishsticks: "fishsticks.png?v8",
      fist: "unicode/270a.png?v8",
      fist_left: "unicode/1f91b.png?v8",
      fist_oncoming: "unicode/1f44a.png?v8",
      fist_raised: "unicode/270a.png?v8",
      fist_right: "unicode/1f91c.png?v8",
      five: "unicode/0035-20e3.png?v8",
      flags: "unicode/1f38f.png?v8",
      flamingo: "unicode/1f9a9.png?v8",
      flashlight: "unicode/1f526.png?v8",
      flat_shoe: "unicode/1f97f.png?v8",
      flatbread: "unicode/1fad3.png?v8",
      fleur_de_lis: "unicode/269c.png?v8",
      flight_arrival: "unicode/1f6ec.png?v8",
      flight_departure: "unicode/1f6eb.png?v8",
      flipper: "unicode/1f42c.png?v8",
      floppy_disk: "unicode/1f4be.png?v8",
      flower_playing_cards: "unicode/1f3b4.png?v8",
      flushed: "unicode/1f633.png?v8",
      fly: "unicode/1fab0.png?v8",
      flying_disc: "unicode/1f94f.png?v8",
      flying_saucer: "unicode/1f6f8.png?v8",
      fog: "unicode/1f32b.png?v8",
      foggy: "unicode/1f301.png?v8",
      fondue: "unicode/1fad5.png?v8",
      foot: "unicode/1f9b6.png?v8",
      football: "unicode/1f3c8.png?v8",
      footprints: "unicode/1f463.png?v8",
      fork_and_knife: "unicode/1f374.png?v8",
      fortune_cookie: "unicode/1f960.png?v8",
      fountain: "unicode/26f2.png?v8",
      fountain_pen: "unicode/1f58b.png?v8",
      four: "unicode/0034-20e3.png?v8",
      four_leaf_clover: "unicode/1f340.png?v8",
      fox_face: "unicode/1f98a.png?v8",
      fr: "unicode/1f1eb-1f1f7.png?v8",
      framed_picture: "unicode/1f5bc.png?v8",
      free: "unicode/1f193.png?v8",
      french_guiana: "unicode/1f1ec-1f1eb.png?v8",
      french_polynesia: "unicode/1f1f5-1f1eb.png?v8",
      french_southern_territories: "unicode/1f1f9-1f1eb.png?v8",
      fried_egg: "unicode/1f373.png?v8",
      fried_shrimp: "unicode/1f364.png?v8",
      fries: "unicode/1f35f.png?v8",
      frog: "unicode/1f438.png?v8",
      frowning: "unicode/1f626.png?v8",
      frowning_face: "unicode/2639.png?v8",
      frowning_man: "unicode/1f64d-2642.png?v8",
      frowning_person: "unicode/1f64d.png?v8",
      frowning_woman: "unicode/1f64d-2640.png?v8",
      fu: "unicode/1f595.png?v8",
      fuelpump: "unicode/26fd.png?v8",
      full_moon: "unicode/1f315.png?v8",
      full_moon_with_face: "unicode/1f31d.png?v8",
      funeral_urn: "unicode/26b1.png?v8",
      gabon: "unicode/1f1ec-1f1e6.png?v8",
      gambia: "unicode/1f1ec-1f1f2.png?v8",
      game_die: "unicode/1f3b2.png?v8",
      garlic: "unicode/1f9c4.png?v8",
      gb: "unicode/1f1ec-1f1e7.png?v8",
      gear: "unicode/2699.png?v8",
      gem: "unicode/1f48e.png?v8",
      gemini: "unicode/264a.png?v8",
      genie: "unicode/1f9de.png?v8",
      genie_man: "unicode/1f9de-2642.png?v8",
      genie_woman: "unicode/1f9de-2640.png?v8",
      georgia: "unicode/1f1ec-1f1ea.png?v8",
      ghana: "unicode/1f1ec-1f1ed.png?v8",
      ghost: "unicode/1f47b.png?v8",
      gibraltar: "unicode/1f1ec-1f1ee.png?v8",
      gift: "unicode/1f381.png?v8",
      gift_heart: "unicode/1f49d.png?v8",
      giraffe: "unicode/1f992.png?v8",
      girl: "unicode/1f467.png?v8",
      globe_with_meridians: "unicode/1f310.png?v8",
      gloves: "unicode/1f9e4.png?v8",
      goal_net: "unicode/1f945.png?v8",
      goat: "unicode/1f410.png?v8",
      goberserk: "goberserk.png?v8",
      godmode: "godmode.png?v8",
      goggles: "unicode/1f97d.png?v8",
      golf: "unicode/26f3.png?v8",
      golfing: "unicode/1f3cc.png?v8",
      golfing_man: "unicode/1f3cc-2642.png?v8",
      golfing_woman: "unicode/1f3cc-2640.png?v8",
      gorilla: "unicode/1f98d.png?v8",
      grapes: "unicode/1f347.png?v8",
      greece: "unicode/1f1ec-1f1f7.png?v8",
      green_apple: "unicode/1f34f.png?v8",
      green_book: "unicode/1f4d7.png?v8",
      green_circle: "unicode/1f7e2.png?v8",
      green_heart: "unicode/1f49a.png?v8",
      green_salad: "unicode/1f957.png?v8",
      green_square: "unicode/1f7e9.png?v8",
      greenland: "unicode/1f1ec-1f1f1.png?v8",
      grenada: "unicode/1f1ec-1f1e9.png?v8",
      grey_exclamation: "unicode/2755.png?v8",
      grey_question: "unicode/2754.png?v8",
      grimacing: "unicode/1f62c.png?v8",
      grin: "unicode/1f601.png?v8",
      grinning: "unicode/1f600.png?v8",
      guadeloupe: "unicode/1f1ec-1f1f5.png?v8",
      guam: "unicode/1f1ec-1f1fa.png?v8",
      guard: "unicode/1f482.png?v8",
      guardsman: "unicode/1f482-2642.png?v8",
      guardswoman: "unicode/1f482-2640.png?v8",
      guatemala: "unicode/1f1ec-1f1f9.png?v8",
      guernsey: "unicode/1f1ec-1f1ec.png?v8",
      guide_dog: "unicode/1f9ae.png?v8",
      guinea: "unicode/1f1ec-1f1f3.png?v8",
      guinea_bissau: "unicode/1f1ec-1f1fc.png?v8",
      guitar: "unicode/1f3b8.png?v8",
      gun: "unicode/1f52b.png?v8",
      guyana: "unicode/1f1ec-1f1fe.png?v8",
      haircut: "unicode/1f487.png?v8",
      haircut_man: "unicode/1f487-2642.png?v8",
      haircut_woman: "unicode/1f487-2640.png?v8",
      haiti: "unicode/1f1ed-1f1f9.png?v8",
      hamburger: "unicode/1f354.png?v8",
      hammer: "unicode/1f528.png?v8",
      hammer_and_pick: "unicode/2692.png?v8",
      hammer_and_wrench: "unicode/1f6e0.png?v8",
      hamster: "unicode/1f439.png?v8",
      hand: "unicode/270b.png?v8",
      hand_over_mouth: "unicode/1f92d.png?v8",
      handbag: "unicode/1f45c.png?v8",
      handball_person: "unicode/1f93e.png?v8",
      handshake: "unicode/1f91d.png?v8",
      hankey: "unicode/1f4a9.png?v8",
      hash: "unicode/0023-20e3.png?v8",
      hatched_chick: "unicode/1f425.png?v8",
      hatching_chick: "unicode/1f423.png?v8",
      headphones: "unicode/1f3a7.png?v8",
      headstone: "unicode/1faa6.png?v8",
      health_worker: "unicode/1f9d1-2695.png?v8",
      hear_no_evil: "unicode/1f649.png?v8",
      heard_mcdonald_islands: "unicode/1f1ed-1f1f2.png?v8",
      heart: "unicode/2764.png?v8",
      heart_decoration: "unicode/1f49f.png?v8",
      heart_eyes: "unicode/1f60d.png?v8",
      heart_eyes_cat: "unicode/1f63b.png?v8",
      heart_on_fire: "unicode/2764-1f525.png?v8",
      heartbeat: "unicode/1f493.png?v8",
      heartpulse: "unicode/1f497.png?v8",
      hearts: "unicode/2665.png?v8",
      heavy_check_mark: "unicode/2714.png?v8",
      heavy_division_sign: "unicode/2797.png?v8",
      heavy_dollar_sign: "unicode/1f4b2.png?v8",
      heavy_exclamation_mark: "unicode/2757.png?v8",
      heavy_heart_exclamation: "unicode/2763.png?v8",
      heavy_minus_sign: "unicode/2796.png?v8",
      heavy_multiplication_x: "unicode/2716.png?v8",
      heavy_plus_sign: "unicode/2795.png?v8",
      hedgehog: "unicode/1f994.png?v8",
      helicopter: "unicode/1f681.png?v8",
      herb: "unicode/1f33f.png?v8",
      hibiscus: "unicode/1f33a.png?v8",
      high_brightness: "unicode/1f506.png?v8",
      high_heel: "unicode/1f460.png?v8",
      hiking_boot: "unicode/1f97e.png?v8",
      hindu_temple: "unicode/1f6d5.png?v8",
      hippopotamus: "unicode/1f99b.png?v8",
      hocho: "unicode/1f52a.png?v8",
      hole: "unicode/1f573.png?v8",
      honduras: "unicode/1f1ed-1f1f3.png?v8",
      honey_pot: "unicode/1f36f.png?v8",
      honeybee: "unicode/1f41d.png?v8",
      hong_kong: "unicode/1f1ed-1f1f0.png?v8",
      hook: "unicode/1fa9d.png?v8",
      horse: "unicode/1f434.png?v8",
      horse_racing: "unicode/1f3c7.png?v8",
      hospital: "unicode/1f3e5.png?v8",
      hot_face: "unicode/1f975.png?v8",
      hot_pepper: "unicode/1f336.png?v8",
      hotdog: "unicode/1f32d.png?v8",
      hotel: "unicode/1f3e8.png?v8",
      hotsprings: "unicode/2668.png?v8",
      hourglass: "unicode/231b.png?v8",
      hourglass_flowing_sand: "unicode/23f3.png?v8",
      house: "unicode/1f3e0.png?v8",
      house_with_garden: "unicode/1f3e1.png?v8",
      houses: "unicode/1f3d8.png?v8",
      hugs: "unicode/1f917.png?v8",
      hungary: "unicode/1f1ed-1f1fa.png?v8",
      hurtrealbad: "hurtrealbad.png?v8",
      hushed: "unicode/1f62f.png?v8",
      hut: "unicode/1f6d6.png?v8",
      ice_cream: "unicode/1f368.png?v8",
      ice_cube: "unicode/1f9ca.png?v8",
      ice_hockey: "unicode/1f3d2.png?v8",
      ice_skate: "unicode/26f8.png?v8",
      icecream: "unicode/1f366.png?v8",
      iceland: "unicode/1f1ee-1f1f8.png?v8",
      id: "unicode/1f194.png?v8",
      ideograph_advantage: "unicode/1f250.png?v8",
      imp: "unicode/1f47f.png?v8",
      inbox_tray: "unicode/1f4e5.png?v8",
      incoming_envelope: "unicode/1f4e8.png?v8",
      india: "unicode/1f1ee-1f1f3.png?v8",
      indonesia: "unicode/1f1ee-1f1e9.png?v8",
      infinity: "unicode/267e.png?v8",
      information_desk_person: "unicode/1f481.png?v8",
      information_source: "unicode/2139.png?v8",
      innocent: "unicode/1f607.png?v8",
      interrobang: "unicode/2049.png?v8",
      iphone: "unicode/1f4f1.png?v8",
      iran: "unicode/1f1ee-1f1f7.png?v8",
      iraq: "unicode/1f1ee-1f1f6.png?v8",
      ireland: "unicode/1f1ee-1f1ea.png?v8",
      isle_of_man: "unicode/1f1ee-1f1f2.png?v8",
      israel: "unicode/1f1ee-1f1f1.png?v8",
      it: "unicode/1f1ee-1f1f9.png?v8",
      izakaya_lantern: "unicode/1f3ee.png?v8",
      jack_o_lantern: "unicode/1f383.png?v8",
      jamaica: "unicode/1f1ef-1f1f2.png?v8",
      japan: "unicode/1f5fe.png?v8",
      japanese_castle: "unicode/1f3ef.png?v8",
      japanese_goblin: "unicode/1f47a.png?v8",
      japanese_ogre: "unicode/1f479.png?v8",
      jeans: "unicode/1f456.png?v8",
      jersey: "unicode/1f1ef-1f1ea.png?v8",
      jigsaw: "unicode/1f9e9.png?v8",
      jordan: "unicode/1f1ef-1f1f4.png?v8",
      joy: "unicode/1f602.png?v8",
      joy_cat: "unicode/1f639.png?v8",
      joystick: "unicode/1f579.png?v8",
      jp: "unicode/1f1ef-1f1f5.png?v8",
      judge: "unicode/1f9d1-2696.png?v8",
      juggling_person: "unicode/1f939.png?v8",
      kaaba: "unicode/1f54b.png?v8",
      kangaroo: "unicode/1f998.png?v8",
      kazakhstan: "unicode/1f1f0-1f1ff.png?v8",
      kenya: "unicode/1f1f0-1f1ea.png?v8",
      key: "unicode/1f511.png?v8",
      keyboard: "unicode/2328.png?v8",
      keycap_ten: "unicode/1f51f.png?v8",
      kick_scooter: "unicode/1f6f4.png?v8",
      kimono: "unicode/1f458.png?v8",
      kiribati: "unicode/1f1f0-1f1ee.png?v8",
      kiss: "unicode/1f48b.png?v8",
      kissing: "unicode/1f617.png?v8",
      kissing_cat: "unicode/1f63d.png?v8",
      kissing_closed_eyes: "unicode/1f61a.png?v8",
      kissing_heart: "unicode/1f618.png?v8",
      kissing_smiling_eyes: "unicode/1f619.png?v8",
      kite: "unicode/1fa81.png?v8",
      kiwi_fruit: "unicode/1f95d.png?v8",
      kneeling_man: "unicode/1f9ce-2642.png?v8",
      kneeling_person: "unicode/1f9ce.png?v8",
      kneeling_woman: "unicode/1f9ce-2640.png?v8",
      knife: "unicode/1f52a.png?v8",
      knot: "unicode/1faa2.png?v8",
      koala: "unicode/1f428.png?v8",
      koko: "unicode/1f201.png?v8",
      kosovo: "unicode/1f1fd-1f1f0.png?v8",
      kr: "unicode/1f1f0-1f1f7.png?v8",
      kuwait: "unicode/1f1f0-1f1fc.png?v8",
      kyrgyzstan: "unicode/1f1f0-1f1ec.png?v8",
      lab_coat: "unicode/1f97c.png?v8",
      label: "unicode/1f3f7.png?v8",
      lacrosse: "unicode/1f94d.png?v8",
      ladder: "unicode/1fa9c.png?v8",
      lady_beetle: "unicode/1f41e.png?v8",
      lantern: "unicode/1f3ee.png?v8",
      laos: "unicode/1f1f1-1f1e6.png?v8",
      large_blue_circle: "unicode/1f535.png?v8",
      large_blue_diamond: "unicode/1f537.png?v8",
      large_orange_diamond: "unicode/1f536.png?v8",
      last_quarter_moon: "unicode/1f317.png?v8",
      last_quarter_moon_with_face: "unicode/1f31c.png?v8",
      latin_cross: "unicode/271d.png?v8",
      latvia: "unicode/1f1f1-1f1fb.png?v8",
      laughing: "unicode/1f606.png?v8",
      leafy_green: "unicode/1f96c.png?v8",
      leaves: "unicode/1f343.png?v8",
      lebanon: "unicode/1f1f1-1f1e7.png?v8",
      ledger: "unicode/1f4d2.png?v8",
      left_luggage: "unicode/1f6c5.png?v8",
      left_right_arrow: "unicode/2194.png?v8",
      left_speech_bubble: "unicode/1f5e8.png?v8",
      leftwards_arrow_with_hook: "unicode/21a9.png?v8",
      leg: "unicode/1f9b5.png?v8",
      lemon: "unicode/1f34b.png?v8",
      leo: "unicode/264c.png?v8",
      leopard: "unicode/1f406.png?v8",
      lesotho: "unicode/1f1f1-1f1f8.png?v8",
      level_slider: "unicode/1f39a.png?v8",
      liberia: "unicode/1f1f1-1f1f7.png?v8",
      libra: "unicode/264e.png?v8",
      libya: "unicode/1f1f1-1f1fe.png?v8",
      liechtenstein: "unicode/1f1f1-1f1ee.png?v8",
      light_rail: "unicode/1f688.png?v8",
      link: "unicode/1f517.png?v8",
      lion: "unicode/1f981.png?v8",
      lips: "unicode/1f444.png?v8",
      lipstick: "unicode/1f484.png?v8",
      lithuania: "unicode/1f1f1-1f1f9.png?v8",
      lizard: "unicode/1f98e.png?v8",
      llama: "unicode/1f999.png?v8",
      lobster: "unicode/1f99e.png?v8",
      lock: "unicode/1f512.png?v8",
      lock_with_ink_pen: "unicode/1f50f.png?v8",
      lollipop: "unicode/1f36d.png?v8",
      long_drum: "unicode/1fa98.png?v8",
      loop: "unicode/27bf.png?v8",
      lotion_bottle: "unicode/1f9f4.png?v8",
      lotus_position: "unicode/1f9d8.png?v8",
      lotus_position_man: "unicode/1f9d8-2642.png?v8",
      lotus_position_woman: "unicode/1f9d8-2640.png?v8",
      loud_sound: "unicode/1f50a.png?v8",
      loudspeaker: "unicode/1f4e2.png?v8",
      love_hotel: "unicode/1f3e9.png?v8",
      love_letter: "unicode/1f48c.png?v8",
      love_you_gesture: "unicode/1f91f.png?v8",
      low_brightness: "unicode/1f505.png?v8",
      luggage: "unicode/1f9f3.png?v8",
      lungs: "unicode/1fac1.png?v8",
      luxembourg: "unicode/1f1f1-1f1fa.png?v8",
      lying_face: "unicode/1f925.png?v8",
      m: "unicode/24c2.png?v8",
      macau: "unicode/1f1f2-1f1f4.png?v8",
      macedonia: "unicode/1f1f2-1f1f0.png?v8",
      madagascar: "unicode/1f1f2-1f1ec.png?v8",
      mag: "unicode/1f50d.png?v8",
      mag_right: "unicode/1f50e.png?v8",
      mage: "unicode/1f9d9.png?v8",
      mage_man: "unicode/1f9d9-2642.png?v8",
      mage_woman: "unicode/1f9d9-2640.png?v8",
      magic_wand: "unicode/1fa84.png?v8",
      magnet: "unicode/1f9f2.png?v8",
      mahjong: "unicode/1f004.png?v8",
      mailbox: "unicode/1f4eb.png?v8",
      mailbox_closed: "unicode/1f4ea.png?v8",
      mailbox_with_mail: "unicode/1f4ec.png?v8",
      mailbox_with_no_mail: "unicode/1f4ed.png?v8",
      malawi: "unicode/1f1f2-1f1fc.png?v8",
      malaysia: "unicode/1f1f2-1f1fe.png?v8",
      maldives: "unicode/1f1f2-1f1fb.png?v8",
      male_detective: "unicode/1f575-2642.png?v8",
      male_sign: "unicode/2642.png?v8",
      mali: "unicode/1f1f2-1f1f1.png?v8",
      malta: "unicode/1f1f2-1f1f9.png?v8",
      mammoth: "unicode/1f9a3.png?v8",
      man: "unicode/1f468.png?v8",
      man_artist: "unicode/1f468-1f3a8.png?v8",
      man_astronaut: "unicode/1f468-1f680.png?v8",
      man_beard: "unicode/1f9d4-2642.png?v8",
      man_cartwheeling: "unicode/1f938-2642.png?v8",
      man_cook: "unicode/1f468-1f373.png?v8",
      man_dancing: "unicode/1f57a.png?v8",
      man_facepalming: "unicode/1f926-2642.png?v8",
      man_factory_worker: "unicode/1f468-1f3ed.png?v8",
      man_farmer: "unicode/1f468-1f33e.png?v8",
      man_feeding_baby: "unicode/1f468-1f37c.png?v8",
      man_firefighter: "unicode/1f468-1f692.png?v8",
      man_health_worker: "unicode/1f468-2695.png?v8",
      man_in_manual_wheelchair: "unicode/1f468-1f9bd.png?v8",
      man_in_motorized_wheelchair: "unicode/1f468-1f9bc.png?v8",
      man_in_tuxedo: "unicode/1f935-2642.png?v8",
      man_judge: "unicode/1f468-2696.png?v8",
      man_juggling: "unicode/1f939-2642.png?v8",
      man_mechanic: "unicode/1f468-1f527.png?v8",
      man_office_worker: "unicode/1f468-1f4bc.png?v8",
      man_pilot: "unicode/1f468-2708.png?v8",
      man_playing_handball: "unicode/1f93e-2642.png?v8",
      man_playing_water_polo: "unicode/1f93d-2642.png?v8",
      man_scientist: "unicode/1f468-1f52c.png?v8",
      man_shrugging: "unicode/1f937-2642.png?v8",
      man_singer: "unicode/1f468-1f3a4.png?v8",
      man_student: "unicode/1f468-1f393.png?v8",
      man_teacher: "unicode/1f468-1f3eb.png?v8",
      man_technologist: "unicode/1f468-1f4bb.png?v8",
      man_with_gua_pi_mao: "unicode/1f472.png?v8",
      man_with_probing_cane: "unicode/1f468-1f9af.png?v8",
      man_with_turban: "unicode/1f473-2642.png?v8",
      man_with_veil: "unicode/1f470-2642.png?v8",
      mandarin: "unicode/1f34a.png?v8",
      mango: "unicode/1f96d.png?v8",
      mans_shoe: "unicode/1f45e.png?v8",
      mantelpiece_clock: "unicode/1f570.png?v8",
      manual_wheelchair: "unicode/1f9bd.png?v8",
      maple_leaf: "unicode/1f341.png?v8",
      marshall_islands: "unicode/1f1f2-1f1ed.png?v8",
      martial_arts_uniform: "unicode/1f94b.png?v8",
      martinique: "unicode/1f1f2-1f1f6.png?v8",
      mask: "unicode/1f637.png?v8",
      massage: "unicode/1f486.png?v8",
      massage_man: "unicode/1f486-2642.png?v8",
      massage_woman: "unicode/1f486-2640.png?v8",
      mate: "unicode/1f9c9.png?v8",
      mauritania: "unicode/1f1f2-1f1f7.png?v8",
      mauritius: "unicode/1f1f2-1f1fa.png?v8",
      mayotte: "unicode/1f1fe-1f1f9.png?v8",
      meat_on_bone: "unicode/1f356.png?v8",
      mechanic: "unicode/1f9d1-1f527.png?v8",
      mechanical_arm: "unicode/1f9be.png?v8",
      mechanical_leg: "unicode/1f9bf.png?v8",
      medal_military: "unicode/1f396.png?v8",
      medal_sports: "unicode/1f3c5.png?v8",
      medical_symbol: "unicode/2695.png?v8",
      mega: "unicode/1f4e3.png?v8",
      melon: "unicode/1f348.png?v8",
      memo: "unicode/1f4dd.png?v8",
      men_wrestling: "unicode/1f93c-2642.png?v8",
      mending_heart: "unicode/2764-1fa79.png?v8",
      menorah: "unicode/1f54e.png?v8",
      mens: "unicode/1f6b9.png?v8",
      mermaid: "unicode/1f9dc-2640.png?v8",
      merman: "unicode/1f9dc-2642.png?v8",
      merperson: "unicode/1f9dc.png?v8",
      metal: "unicode/1f918.png?v8",
      metro: "unicode/1f687.png?v8",
      mexico: "unicode/1f1f2-1f1fd.png?v8",
      microbe: "unicode/1f9a0.png?v8",
      micronesia: "unicode/1f1eb-1f1f2.png?v8",
      microphone: "unicode/1f3a4.png?v8",
      microscope: "unicode/1f52c.png?v8",
      middle_finger: "unicode/1f595.png?v8",
      military_helmet: "unicode/1fa96.png?v8",
      milk_glass: "unicode/1f95b.png?v8",
      milky_way: "unicode/1f30c.png?v8",
      minibus: "unicode/1f690.png?v8",
      minidisc: "unicode/1f4bd.png?v8",
      mirror: "unicode/1fa9e.png?v8",
      mobile_phone_off: "unicode/1f4f4.png?v8",
      moldova: "unicode/1f1f2-1f1e9.png?v8",
      monaco: "unicode/1f1f2-1f1e8.png?v8",
      money_mouth_face: "unicode/1f911.png?v8",
      money_with_wings: "unicode/1f4b8.png?v8",
      moneybag: "unicode/1f4b0.png?v8",
      mongolia: "unicode/1f1f2-1f1f3.png?v8",
      monkey: "unicode/1f412.png?v8",
      monkey_face: "unicode/1f435.png?v8",
      monocle_face: "unicode/1f9d0.png?v8",
      monorail: "unicode/1f69d.png?v8",
      montenegro: "unicode/1f1f2-1f1ea.png?v8",
      montserrat: "unicode/1f1f2-1f1f8.png?v8",
      moon: "unicode/1f314.png?v8",
      moon_cake: "unicode/1f96e.png?v8",
      morocco: "unicode/1f1f2-1f1e6.png?v8",
      mortar_board: "unicode/1f393.png?v8",
      mosque: "unicode/1f54c.png?v8",
      mosquito: "unicode/1f99f.png?v8",
      motor_boat: "unicode/1f6e5.png?v8",
      motor_scooter: "unicode/1f6f5.png?v8",
      motorcycle: "unicode/1f3cd.png?v8",
      motorized_wheelchair: "unicode/1f9bc.png?v8",
      motorway: "unicode/1f6e3.png?v8",
      mount_fuji: "unicode/1f5fb.png?v8",
      mountain: "unicode/26f0.png?v8",
      mountain_bicyclist: "unicode/1f6b5.png?v8",
      mountain_biking_man: "unicode/1f6b5-2642.png?v8",
      mountain_biking_woman: "unicode/1f6b5-2640.png?v8",
      mountain_cableway: "unicode/1f6a0.png?v8",
      mountain_railway: "unicode/1f69e.png?v8",
      mountain_snow: "unicode/1f3d4.png?v8",
      mouse: "unicode/1f42d.png?v8",
      mouse2: "unicode/1f401.png?v8",
      mouse_trap: "unicode/1faa4.png?v8",
      movie_camera: "unicode/1f3a5.png?v8",
      moyai: "unicode/1f5ff.png?v8",
      mozambique: "unicode/1f1f2-1f1ff.png?v8",
      mrs_claus: "unicode/1f936.png?v8",
      muscle: "unicode/1f4aa.png?v8",
      mushroom: "unicode/1f344.png?v8",
      musical_keyboard: "unicode/1f3b9.png?v8",
      musical_note: "unicode/1f3b5.png?v8",
      musical_score: "unicode/1f3bc.png?v8",
      mute: "unicode/1f507.png?v8",
      mx_claus: "unicode/1f9d1-1f384.png?v8",
      myanmar: "unicode/1f1f2-1f1f2.png?v8",
      nail_care: "unicode/1f485.png?v8",
      name_badge: "unicode/1f4db.png?v8",
      namibia: "unicode/1f1f3-1f1e6.png?v8",
      national_park: "unicode/1f3de.png?v8",
      nauru: "unicode/1f1f3-1f1f7.png?v8",
      nauseated_face: "unicode/1f922.png?v8",
      nazar_amulet: "unicode/1f9ff.png?v8",
      neckbeard: "neckbeard.png?v8",
      necktie: "unicode/1f454.png?v8",
      negative_squared_cross_mark: "unicode/274e.png?v8",
      nepal: "unicode/1f1f3-1f1f5.png?v8",
      nerd_face: "unicode/1f913.png?v8",
      nesting_dolls: "unicode/1fa86.png?v8",
      netherlands: "unicode/1f1f3-1f1f1.png?v8",
      neutral_face: "unicode/1f610.png?v8",
      new: "unicode/1f195.png?v8",
      new_caledonia: "unicode/1f1f3-1f1e8.png?v8",
      new_moon: "unicode/1f311.png?v8",
      new_moon_with_face: "unicode/1f31a.png?v8",
      new_zealand: "unicode/1f1f3-1f1ff.png?v8",
      newspaper: "unicode/1f4f0.png?v8",
      newspaper_roll: "unicode/1f5de.png?v8",
      next_track_button: "unicode/23ed.png?v8",
      ng: "unicode/1f196.png?v8",
      ng_man: "unicode/1f645-2642.png?v8",
      ng_woman: "unicode/1f645-2640.png?v8",
      nicaragua: "unicode/1f1f3-1f1ee.png?v8",
      niger: "unicode/1f1f3-1f1ea.png?v8",
      nigeria: "unicode/1f1f3-1f1ec.png?v8",
      night_with_stars: "unicode/1f303.png?v8",
      nine: "unicode/0039-20e3.png?v8",
      ninja: "unicode/1f977.png?v8",
      niue: "unicode/1f1f3-1f1fa.png?v8",
      no_bell: "unicode/1f515.png?v8",
      no_bicycles: "unicode/1f6b3.png?v8",
      no_entry: "unicode/26d4.png?v8",
      no_entry_sign: "unicode/1f6ab.png?v8",
      no_good: "unicode/1f645.png?v8",
      no_good_man: "unicode/1f645-2642.png?v8",
      no_good_woman: "unicode/1f645-2640.png?v8",
      no_mobile_phones: "unicode/1f4f5.png?v8",
      no_mouth: "unicode/1f636.png?v8",
      no_pedestrians: "unicode/1f6b7.png?v8",
      no_smoking: "unicode/1f6ad.png?v8",
      "non-potable_water": "unicode/1f6b1.png?v8",
      norfolk_island: "unicode/1f1f3-1f1eb.png?v8",
      north_korea: "unicode/1f1f0-1f1f5.png?v8",
      northern_mariana_islands: "unicode/1f1f2-1f1f5.png?v8",
      norway: "unicode/1f1f3-1f1f4.png?v8",
      nose: "unicode/1f443.png?v8",
      notebook: "unicode/1f4d3.png?v8",
      notebook_with_decorative_cover: "unicode/1f4d4.png?v8",
      notes: "unicode/1f3b6.png?v8",
      nut_and_bolt: "unicode/1f529.png?v8",
      o: "unicode/2b55.png?v8",
      o2: "unicode/1f17e.png?v8",
      ocean: "unicode/1f30a.png?v8",
      octocat: "octocat.png?v8",
      octopus: "unicode/1f419.png?v8",
      oden: "unicode/1f362.png?v8",
      office: "unicode/1f3e2.png?v8",
      office_worker: "unicode/1f9d1-1f4bc.png?v8",
      oil_drum: "unicode/1f6e2.png?v8",
      ok: "unicode/1f197.png?v8",
      ok_hand: "unicode/1f44c.png?v8",
      ok_man: "unicode/1f646-2642.png?v8",
      ok_person: "unicode/1f646.png?v8",
      ok_woman: "unicode/1f646-2640.png?v8",
      old_key: "unicode/1f5dd.png?v8",
      older_adult: "unicode/1f9d3.png?v8",
      older_man: "unicode/1f474.png?v8",
      older_woman: "unicode/1f475.png?v8",
      olive: "unicode/1fad2.png?v8",
      om: "unicode/1f549.png?v8",
      oman: "unicode/1f1f4-1f1f2.png?v8",
      on: "unicode/1f51b.png?v8",
      oncoming_automobile: "unicode/1f698.png?v8",
      oncoming_bus: "unicode/1f68d.png?v8",
      oncoming_police_car: "unicode/1f694.png?v8",
      oncoming_taxi: "unicode/1f696.png?v8",
      one: "unicode/0031-20e3.png?v8",
      one_piece_swimsuit: "unicode/1fa71.png?v8",
      onion: "unicode/1f9c5.png?v8",
      open_book: "unicode/1f4d6.png?v8",
      open_file_folder: "unicode/1f4c2.png?v8",
      open_hands: "unicode/1f450.png?v8",
      open_mouth: "unicode/1f62e.png?v8",
      open_umbrella: "unicode/2602.png?v8",
      ophiuchus: "unicode/26ce.png?v8",
      orange: "unicode/1f34a.png?v8",
      orange_book: "unicode/1f4d9.png?v8",
      orange_circle: "unicode/1f7e0.png?v8",
      orange_heart: "unicode/1f9e1.png?v8",
      orange_square: "unicode/1f7e7.png?v8",
      orangutan: "unicode/1f9a7.png?v8",
      orthodox_cross: "unicode/2626.png?v8",
      otter: "unicode/1f9a6.png?v8",
      outbox_tray: "unicode/1f4e4.png?v8",
      owl: "unicode/1f989.png?v8",
      ox: "unicode/1f402.png?v8",
      oyster: "unicode/1f9aa.png?v8",
      package: "unicode/1f4e6.png?v8",
      page_facing_up: "unicode/1f4c4.png?v8",
      page_with_curl: "unicode/1f4c3.png?v8",
      pager: "unicode/1f4df.png?v8",
      paintbrush: "unicode/1f58c.png?v8",
      pakistan: "unicode/1f1f5-1f1f0.png?v8",
      palau: "unicode/1f1f5-1f1fc.png?v8",
      palestinian_territories: "unicode/1f1f5-1f1f8.png?v8",
      palm_tree: "unicode/1f334.png?v8",
      palms_up_together: "unicode/1f932.png?v8",
      panama: "unicode/1f1f5-1f1e6.png?v8",
      pancakes: "unicode/1f95e.png?v8",
      panda_face: "unicode/1f43c.png?v8",
      paperclip: "unicode/1f4ce.png?v8",
      paperclips: "unicode/1f587.png?v8",
      papua_new_guinea: "unicode/1f1f5-1f1ec.png?v8",
      parachute: "unicode/1fa82.png?v8",
      paraguay: "unicode/1f1f5-1f1fe.png?v8",
      parasol_on_ground: "unicode/26f1.png?v8",
      parking: "unicode/1f17f.png?v8",
      parrot: "unicode/1f99c.png?v8",
      part_alternation_mark: "unicode/303d.png?v8",
      partly_sunny: "unicode/26c5.png?v8",
      partying_face: "unicode/1f973.png?v8",
      passenger_ship: "unicode/1f6f3.png?v8",
      passport_control: "unicode/1f6c2.png?v8",
      pause_button: "unicode/23f8.png?v8",
      paw_prints: "unicode/1f43e.png?v8",
      peace_symbol: "unicode/262e.png?v8",
      peach: "unicode/1f351.png?v8",
      peacock: "unicode/1f99a.png?v8",
      peanuts: "unicode/1f95c.png?v8",
      pear: "unicode/1f350.png?v8",
      pen: "unicode/1f58a.png?v8",
      pencil: "unicode/1f4dd.png?v8",
      pencil2: "unicode/270f.png?v8",
      penguin: "unicode/1f427.png?v8",
      pensive: "unicode/1f614.png?v8",
      people_holding_hands: "unicode/1f9d1-1f91d-1f9d1.png?v8",
      people_hugging: "unicode/1fac2.png?v8",
      performing_arts: "unicode/1f3ad.png?v8",
      persevere: "unicode/1f623.png?v8",
      person_bald: "unicode/1f9d1-1f9b2.png?v8",
      person_curly_hair: "unicode/1f9d1-1f9b1.png?v8",
      person_feeding_baby: "unicode/1f9d1-1f37c.png?v8",
      person_fencing: "unicode/1f93a.png?v8",
      person_in_manual_wheelchair: "unicode/1f9d1-1f9bd.png?v8",
      person_in_motorized_wheelchair: "unicode/1f9d1-1f9bc.png?v8",
      person_in_tuxedo: "unicode/1f935.png?v8",
      person_red_hair: "unicode/1f9d1-1f9b0.png?v8",
      person_white_hair: "unicode/1f9d1-1f9b3.png?v8",
      person_with_probing_cane: "unicode/1f9d1-1f9af.png?v8",
      person_with_turban: "unicode/1f473.png?v8",
      person_with_veil: "unicode/1f470.png?v8",
      peru: "unicode/1f1f5-1f1ea.png?v8",
      petri_dish: "unicode/1f9eb.png?v8",
      philippines: "unicode/1f1f5-1f1ed.png?v8",
      phone: "unicode/260e.png?v8",
      pick: "unicode/26cf.png?v8",
      pickup_truck: "unicode/1f6fb.png?v8",
      pie: "unicode/1f967.png?v8",
      pig: "unicode/1f437.png?v8",
      pig2: "unicode/1f416.png?v8",
      pig_nose: "unicode/1f43d.png?v8",
      pill: "unicode/1f48a.png?v8",
      pilot: "unicode/1f9d1-2708.png?v8",
      pinata: "unicode/1fa85.png?v8",
      pinched_fingers: "unicode/1f90c.png?v8",
      pinching_hand: "unicode/1f90f.png?v8",
      pineapple: "unicode/1f34d.png?v8",
      ping_pong: "unicode/1f3d3.png?v8",
      pirate_flag: "unicode/1f3f4-2620.png?v8",
      pisces: "unicode/2653.png?v8",
      pitcairn_islands: "unicode/1f1f5-1f1f3.png?v8",
      pizza: "unicode/1f355.png?v8",
      placard: "unicode/1faa7.png?v8",
      place_of_worship: "unicode/1f6d0.png?v8",
      plate_with_cutlery: "unicode/1f37d.png?v8",
      play_or_pause_button: "unicode/23ef.png?v8",
      pleading_face: "unicode/1f97a.png?v8",
      plunger: "unicode/1faa0.png?v8",
      point_down: "unicode/1f447.png?v8",
      point_left: "unicode/1f448.png?v8",
      point_right: "unicode/1f449.png?v8",
      point_up: "unicode/261d.png?v8",
      point_up_2: "unicode/1f446.png?v8",
      poland: "unicode/1f1f5-1f1f1.png?v8",
      polar_bear: "unicode/1f43b-2744.png?v8",
      police_car: "unicode/1f693.png?v8",
      police_officer: "unicode/1f46e.png?v8",
      policeman: "unicode/1f46e-2642.png?v8",
      policewoman: "unicode/1f46e-2640.png?v8",
      poodle: "unicode/1f429.png?v8",
      poop: "unicode/1f4a9.png?v8",
      popcorn: "unicode/1f37f.png?v8",
      portugal: "unicode/1f1f5-1f1f9.png?v8",
      post_office: "unicode/1f3e3.png?v8",
      postal_horn: "unicode/1f4ef.png?v8",
      postbox: "unicode/1f4ee.png?v8",
      potable_water: "unicode/1f6b0.png?v8",
      potato: "unicode/1f954.png?v8",
      potted_plant: "unicode/1fab4.png?v8",
      pouch: "unicode/1f45d.png?v8",
      poultry_leg: "unicode/1f357.png?v8",
      pound: "unicode/1f4b7.png?v8",
      pout: "unicode/1f621.png?v8",
      pouting_cat: "unicode/1f63e.png?v8",
      pouting_face: "unicode/1f64e.png?v8",
      pouting_man: "unicode/1f64e-2642.png?v8",
      pouting_woman: "unicode/1f64e-2640.png?v8",
      pray: "unicode/1f64f.png?v8",
      prayer_beads: "unicode/1f4ff.png?v8",
      pregnant_woman: "unicode/1f930.png?v8",
      pretzel: "unicode/1f968.png?v8",
      previous_track_button: "unicode/23ee.png?v8",
      prince: "unicode/1f934.png?v8",
      princess: "unicode/1f478.png?v8",
      printer: "unicode/1f5a8.png?v8",
      probing_cane: "unicode/1f9af.png?v8",
      puerto_rico: "unicode/1f1f5-1f1f7.png?v8",
      punch: "unicode/1f44a.png?v8",
      purple_circle: "unicode/1f7e3.png?v8",
      purple_heart: "unicode/1f49c.png?v8",
      purple_square: "unicode/1f7ea.png?v8",
      purse: "unicode/1f45b.png?v8",
      pushpin: "unicode/1f4cc.png?v8",
      put_litter_in_its_place: "unicode/1f6ae.png?v8",
      qatar: "unicode/1f1f6-1f1e6.png?v8",
      question: "unicode/2753.png?v8",
      rabbit: "unicode/1f430.png?v8",
      rabbit2: "unicode/1f407.png?v8",
      raccoon: "unicode/1f99d.png?v8",
      racehorse: "unicode/1f40e.png?v8",
      racing_car: "unicode/1f3ce.png?v8",
      radio: "unicode/1f4fb.png?v8",
      radio_button: "unicode/1f518.png?v8",
      radioactive: "unicode/2622.png?v8",
      rage: "unicode/1f621.png?v8",
      rage1: "rage1.png?v8",
      rage2: "rage2.png?v8",
      rage3: "rage3.png?v8",
      rage4: "rage4.png?v8",
      railway_car: "unicode/1f683.png?v8",
      railway_track: "unicode/1f6e4.png?v8",
      rainbow: "unicode/1f308.png?v8",
      rainbow_flag: "unicode/1f3f3-1f308.png?v8",
      raised_back_of_hand: "unicode/1f91a.png?v8",
      raised_eyebrow: "unicode/1f928.png?v8",
      raised_hand: "unicode/270b.png?v8",
      raised_hand_with_fingers_splayed: "unicode/1f590.png?v8",
      raised_hands: "unicode/1f64c.png?v8",
      raising_hand: "unicode/1f64b.png?v8",
      raising_hand_man: "unicode/1f64b-2642.png?v8",
      raising_hand_woman: "unicode/1f64b-2640.png?v8",
      ram: "unicode/1f40f.png?v8",
      ramen: "unicode/1f35c.png?v8",
      rat: "unicode/1f400.png?v8",
      razor: "unicode/1fa92.png?v8",
      receipt: "unicode/1f9fe.png?v8",
      record_button: "unicode/23fa.png?v8",
      recycle: "unicode/267b.png?v8",
      red_car: "unicode/1f697.png?v8",
      red_circle: "unicode/1f534.png?v8",
      red_envelope: "unicode/1f9e7.png?v8",
      red_haired_man: "unicode/1f468-1f9b0.png?v8",
      red_haired_woman: "unicode/1f469-1f9b0.png?v8",
      red_square: "unicode/1f7e5.png?v8",
      registered: "unicode/00ae.png?v8",
      relaxed: "unicode/263a.png?v8",
      relieved: "unicode/1f60c.png?v8",
      reminder_ribbon: "unicode/1f397.png?v8",
      repeat: "unicode/1f501.png?v8",
      repeat_one: "unicode/1f502.png?v8",
      rescue_worker_helmet: "unicode/26d1.png?v8",
      restroom: "unicode/1f6bb.png?v8",
      reunion: "unicode/1f1f7-1f1ea.png?v8",
      revolving_hearts: "unicode/1f49e.png?v8",
      rewind: "unicode/23ea.png?v8",
      rhinoceros: "unicode/1f98f.png?v8",
      ribbon: "unicode/1f380.png?v8",
      rice: "unicode/1f35a.png?v8",
      rice_ball: "unicode/1f359.png?v8",
      rice_cracker: "unicode/1f358.png?v8",
      rice_scene: "unicode/1f391.png?v8",
      right_anger_bubble: "unicode/1f5ef.png?v8",
      ring: "unicode/1f48d.png?v8",
      ringed_planet: "unicode/1fa90.png?v8",
      robot: "unicode/1f916.png?v8",
      rock: "unicode/1faa8.png?v8",
      rocket: "unicode/1f680.png?v8",
      rofl: "unicode/1f923.png?v8",
      roll_eyes: "unicode/1f644.png?v8",
      roll_of_paper: "unicode/1f9fb.png?v8",
      roller_coaster: "unicode/1f3a2.png?v8",
      roller_skate: "unicode/1f6fc.png?v8",
      romania: "unicode/1f1f7-1f1f4.png?v8",
      rooster: "unicode/1f413.png?v8",
      rose: "unicode/1f339.png?v8",
      rosette: "unicode/1f3f5.png?v8",
      rotating_light: "unicode/1f6a8.png?v8",
      round_pushpin: "unicode/1f4cd.png?v8",
      rowboat: "unicode/1f6a3.png?v8",
      rowing_man: "unicode/1f6a3-2642.png?v8",
      rowing_woman: "unicode/1f6a3-2640.png?v8",
      ru: "unicode/1f1f7-1f1fa.png?v8",
      rugby_football: "unicode/1f3c9.png?v8",
      runner: "unicode/1f3c3.png?v8",
      running: "unicode/1f3c3.png?v8",
      running_man: "unicode/1f3c3-2642.png?v8",
      running_shirt_with_sash: "unicode/1f3bd.png?v8",
      running_woman: "unicode/1f3c3-2640.png?v8",
      rwanda: "unicode/1f1f7-1f1fc.png?v8",
      sa: "unicode/1f202.png?v8",
      safety_pin: "unicode/1f9f7.png?v8",
      safety_vest: "unicode/1f9ba.png?v8",
      sagittarius: "unicode/2650.png?v8",
      sailboat: "unicode/26f5.png?v8",
      sake: "unicode/1f376.png?v8",
      salt: "unicode/1f9c2.png?v8",
      samoa: "unicode/1f1fc-1f1f8.png?v8",
      san_marino: "unicode/1f1f8-1f1f2.png?v8",
      sandal: "unicode/1f461.png?v8",
      sandwich: "unicode/1f96a.png?v8",
      santa: "unicode/1f385.png?v8",
      sao_tome_principe: "unicode/1f1f8-1f1f9.png?v8",
      sari: "unicode/1f97b.png?v8",
      sassy_man: "unicode/1f481-2642.png?v8",
      sassy_woman: "unicode/1f481-2640.png?v8",
      satellite: "unicode/1f4e1.png?v8",
      satisfied: "unicode/1f606.png?v8",
      saudi_arabia: "unicode/1f1f8-1f1e6.png?v8",
      sauna_man: "unicode/1f9d6-2642.png?v8",
      sauna_person: "unicode/1f9d6.png?v8",
      sauna_woman: "unicode/1f9d6-2640.png?v8",
      sauropod: "unicode/1f995.png?v8",
      saxophone: "unicode/1f3b7.png?v8",
      scarf: "unicode/1f9e3.png?v8",
      school: "unicode/1f3eb.png?v8",
      school_satchel: "unicode/1f392.png?v8",
      scientist: "unicode/1f9d1-1f52c.png?v8",
      scissors: "unicode/2702.png?v8",
      scorpion: "unicode/1f982.png?v8",
      scorpius: "unicode/264f.png?v8",
      scotland: "unicode/1f3f4-e0067-e0062-e0073-e0063-e0074-e007f.png?v8",
      scream: "unicode/1f631.png?v8",
      scream_cat: "unicode/1f640.png?v8",
      screwdriver: "unicode/1fa9b.png?v8",
      scroll: "unicode/1f4dc.png?v8",
      seal: "unicode/1f9ad.png?v8",
      seat: "unicode/1f4ba.png?v8",
      secret: "unicode/3299.png?v8",
      see_no_evil: "unicode/1f648.png?v8",
      seedling: "unicode/1f331.png?v8",
      selfie: "unicode/1f933.png?v8",
      senegal: "unicode/1f1f8-1f1f3.png?v8",
      serbia: "unicode/1f1f7-1f1f8.png?v8",
      service_dog: "unicode/1f415-1f9ba.png?v8",
      seven: "unicode/0037-20e3.png?v8",
      sewing_needle: "unicode/1faa1.png?v8",
      seychelles: "unicode/1f1f8-1f1e8.png?v8",
      shallow_pan_of_food: "unicode/1f958.png?v8",
      shamrock: "unicode/2618.png?v8",
      shark: "unicode/1f988.png?v8",
      shaved_ice: "unicode/1f367.png?v8",
      sheep: "unicode/1f411.png?v8",
      shell: "unicode/1f41a.png?v8",
      shield: "unicode/1f6e1.png?v8",
      shinto_shrine: "unicode/26e9.png?v8",
      ship: "unicode/1f6a2.png?v8",
      shipit: "shipit.png?v8",
      shirt: "unicode/1f455.png?v8",
      shit: "unicode/1f4a9.png?v8",
      shoe: "unicode/1f45e.png?v8",
      shopping: "unicode/1f6cd.png?v8",
      shopping_cart: "unicode/1f6d2.png?v8",
      shorts: "unicode/1fa73.png?v8",
      shower: "unicode/1f6bf.png?v8",
      shrimp: "unicode/1f990.png?v8",
      shrug: "unicode/1f937.png?v8",
      shushing_face: "unicode/1f92b.png?v8",
      sierra_leone: "unicode/1f1f8-1f1f1.png?v8",
      signal_strength: "unicode/1f4f6.png?v8",
      singapore: "unicode/1f1f8-1f1ec.png?v8",
      singer: "unicode/1f9d1-1f3a4.png?v8",
      sint_maarten: "unicode/1f1f8-1f1fd.png?v8",
      six: "unicode/0036-20e3.png?v8",
      six_pointed_star: "unicode/1f52f.png?v8",
      skateboard: "unicode/1f6f9.png?v8",
      ski: "unicode/1f3bf.png?v8",
      skier: "unicode/26f7.png?v8",
      skull: "unicode/1f480.png?v8",
      skull_and_crossbones: "unicode/2620.png?v8",
      skunk: "unicode/1f9a8.png?v8",
      sled: "unicode/1f6f7.png?v8",
      sleeping: "unicode/1f634.png?v8",
      sleeping_bed: "unicode/1f6cc.png?v8",
      sleepy: "unicode/1f62a.png?v8",
      slightly_frowning_face: "unicode/1f641.png?v8",
      slightly_smiling_face: "unicode/1f642.png?v8",
      slot_machine: "unicode/1f3b0.png?v8",
      sloth: "unicode/1f9a5.png?v8",
      slovakia: "unicode/1f1f8-1f1f0.png?v8",
      slovenia: "unicode/1f1f8-1f1ee.png?v8",
      small_airplane: "unicode/1f6e9.png?v8",
      small_blue_diamond: "unicode/1f539.png?v8",
      small_orange_diamond: "unicode/1f538.png?v8",
      small_red_triangle: "unicode/1f53a.png?v8",
      small_red_triangle_down: "unicode/1f53b.png?v8",
      smile: "unicode/1f604.png?v8",
      smile_cat: "unicode/1f638.png?v8",
      smiley: "unicode/1f603.png?v8",
      smiley_cat: "unicode/1f63a.png?v8",
      smiling_face_with_tear: "unicode/1f972.png?v8",
      smiling_face_with_three_hearts: "unicode/1f970.png?v8",
      smiling_imp: "unicode/1f608.png?v8",
      smirk: "unicode/1f60f.png?v8",
      smirk_cat: "unicode/1f63c.png?v8",
      smoking: "unicode/1f6ac.png?v8",
      snail: "unicode/1f40c.png?v8",
      snake: "unicode/1f40d.png?v8",
      sneezing_face: "unicode/1f927.png?v8",
      snowboarder: "unicode/1f3c2.png?v8",
      snowflake: "unicode/2744.png?v8",
      snowman: "unicode/26c4.png?v8",
      snowman_with_snow: "unicode/2603.png?v8",
      soap: "unicode/1f9fc.png?v8",
      sob: "unicode/1f62d.png?v8",
      soccer: "unicode/26bd.png?v8",
      socks: "unicode/1f9e6.png?v8",
      softball: "unicode/1f94e.png?v8",
      solomon_islands: "unicode/1f1f8-1f1e7.png?v8",
      somalia: "unicode/1f1f8-1f1f4.png?v8",
      soon: "unicode/1f51c.png?v8",
      sos: "unicode/1f198.png?v8",
      sound: "unicode/1f509.png?v8",
      south_africa: "unicode/1f1ff-1f1e6.png?v8",
      south_georgia_south_sandwich_islands: "unicode/1f1ec-1f1f8.png?v8",
      south_sudan: "unicode/1f1f8-1f1f8.png?v8",
      space_invader: "unicode/1f47e.png?v8",
      spades: "unicode/2660.png?v8",
      spaghetti: "unicode/1f35d.png?v8",
      sparkle: "unicode/2747.png?v8",
      sparkler: "unicode/1f387.png?v8",
      sparkles: "unicode/2728.png?v8",
      sparkling_heart: "unicode/1f496.png?v8",
      speak_no_evil: "unicode/1f64a.png?v8",
      speaker: "unicode/1f508.png?v8",
      speaking_head: "unicode/1f5e3.png?v8",
      speech_balloon: "unicode/1f4ac.png?v8",
      speedboat: "unicode/1f6a4.png?v8",
      spider: "unicode/1f577.png?v8",
      spider_web: "unicode/1f578.png?v8",
      spiral_calendar: "unicode/1f5d3.png?v8",
      spiral_notepad: "unicode/1f5d2.png?v8",
      sponge: "unicode/1f9fd.png?v8",
      spoon: "unicode/1f944.png?v8",
      squid: "unicode/1f991.png?v8",
      sri_lanka: "unicode/1f1f1-1f1f0.png?v8",
      st_barthelemy: "unicode/1f1e7-1f1f1.png?v8",
      st_helena: "unicode/1f1f8-1f1ed.png?v8",
      st_kitts_nevis: "unicode/1f1f0-1f1f3.png?v8",
      st_lucia: "unicode/1f1f1-1f1e8.png?v8",
      st_martin: "unicode/1f1f2-1f1eb.png?v8",
      st_pierre_miquelon: "unicode/1f1f5-1f1f2.png?v8",
      st_vincent_grenadines: "unicode/1f1fb-1f1e8.png?v8",
      stadium: "unicode/1f3df.png?v8",
      standing_man: "unicode/1f9cd-2642.png?v8",
      standing_person: "unicode/1f9cd.png?v8",
      standing_woman: "unicode/1f9cd-2640.png?v8",
      star: "unicode/2b50.png?v8",
      star2: "unicode/1f31f.png?v8",
      star_and_crescent: "unicode/262a.png?v8",
      star_of_david: "unicode/2721.png?v8",
      star_struck: "unicode/1f929.png?v8",
      stars: "unicode/1f320.png?v8",
      station: "unicode/1f689.png?v8",
      statue_of_liberty: "unicode/1f5fd.png?v8",
      steam_locomotive: "unicode/1f682.png?v8",
      stethoscope: "unicode/1fa7a.png?v8",
      stew: "unicode/1f372.png?v8",
      stop_button: "unicode/23f9.png?v8",
      stop_sign: "unicode/1f6d1.png?v8",
      stopwatch: "unicode/23f1.png?v8",
      straight_ruler: "unicode/1f4cf.png?v8",
      strawberry: "unicode/1f353.png?v8",
      stuck_out_tongue: "unicode/1f61b.png?v8",
      stuck_out_tongue_closed_eyes: "unicode/1f61d.png?v8",
      stuck_out_tongue_winking_eye: "unicode/1f61c.png?v8",
      student: "unicode/1f9d1-1f393.png?v8",
      studio_microphone: "unicode/1f399.png?v8",
      stuffed_flatbread: "unicode/1f959.png?v8",
      sudan: "unicode/1f1f8-1f1e9.png?v8",
      sun_behind_large_cloud: "unicode/1f325.png?v8",
      sun_behind_rain_cloud: "unicode/1f326.png?v8",
      sun_behind_small_cloud: "unicode/1f324.png?v8",
      sun_with_face: "unicode/1f31e.png?v8",
      sunflower: "unicode/1f33b.png?v8",
      sunglasses: "unicode/1f60e.png?v8",
      sunny: "unicode/2600.png?v8",
      sunrise: "unicode/1f305.png?v8",
      sunrise_over_mountains: "unicode/1f304.png?v8",
      superhero: "unicode/1f9b8.png?v8",
      superhero_man: "unicode/1f9b8-2642.png?v8",
      superhero_woman: "unicode/1f9b8-2640.png?v8",
      supervillain: "unicode/1f9b9.png?v8",
      supervillain_man: "unicode/1f9b9-2642.png?v8",
      supervillain_woman: "unicode/1f9b9-2640.png?v8",
      surfer: "unicode/1f3c4.png?v8",
      surfing_man: "unicode/1f3c4-2642.png?v8",
      surfing_woman: "unicode/1f3c4-2640.png?v8",
      suriname: "unicode/1f1f8-1f1f7.png?v8",
      sushi: "unicode/1f363.png?v8",
      suspect: "suspect.png?v8",
      suspension_railway: "unicode/1f69f.png?v8",
      svalbard_jan_mayen: "unicode/1f1f8-1f1ef.png?v8",
      swan: "unicode/1f9a2.png?v8",
      swaziland: "unicode/1f1f8-1f1ff.png?v8",
      sweat: "unicode/1f613.png?v8",
      sweat_drops: "unicode/1f4a6.png?v8",
      sweat_smile: "unicode/1f605.png?v8",
      sweden: "unicode/1f1f8-1f1ea.png?v8",
      sweet_potato: "unicode/1f360.png?v8",
      swim_brief: "unicode/1fa72.png?v8",
      swimmer: "unicode/1f3ca.png?v8",
      swimming_man: "unicode/1f3ca-2642.png?v8",
      swimming_woman: "unicode/1f3ca-2640.png?v8",
      switzerland: "unicode/1f1e8-1f1ed.png?v8",
      symbols: "unicode/1f523.png?v8",
      synagogue: "unicode/1f54d.png?v8",
      syria: "unicode/1f1f8-1f1fe.png?v8",
      syringe: "unicode/1f489.png?v8",
      "t-rex": "unicode/1f996.png?v8",
      taco: "unicode/1f32e.png?v8",
      tada: "unicode/1f389.png?v8",
      taiwan: "unicode/1f1f9-1f1fc.png?v8",
      tajikistan: "unicode/1f1f9-1f1ef.png?v8",
      takeout_box: "unicode/1f961.png?v8",
      tamale: "unicode/1fad4.png?v8",
      tanabata_tree: "unicode/1f38b.png?v8",
      tangerine: "unicode/1f34a.png?v8",
      tanzania: "unicode/1f1f9-1f1ff.png?v8",
      taurus: "unicode/2649.png?v8",
      taxi: "unicode/1f695.png?v8",
      tea: "unicode/1f375.png?v8",
      teacher: "unicode/1f9d1-1f3eb.png?v8",
      teapot: "unicode/1fad6.png?v8",
      technologist: "unicode/1f9d1-1f4bb.png?v8",
      teddy_bear: "unicode/1f9f8.png?v8",
      telephone: "unicode/260e.png?v8",
      telephone_receiver: "unicode/1f4de.png?v8",
      telescope: "unicode/1f52d.png?v8",
      tennis: "unicode/1f3be.png?v8",
      tent: "unicode/26fa.png?v8",
      test_tube: "unicode/1f9ea.png?v8",
      thailand: "unicode/1f1f9-1f1ed.png?v8",
      thermometer: "unicode/1f321.png?v8",
      thinking: "unicode/1f914.png?v8",
      thong_sandal: "unicode/1fa74.png?v8",
      thought_balloon: "unicode/1f4ad.png?v8",
      thread: "unicode/1f9f5.png?v8",
      three: "unicode/0033-20e3.png?v8",
      thumbsdown: "unicode/1f44e.png?v8",
      thumbsup: "unicode/1f44d.png?v8",
      ticket: "unicode/1f3ab.png?v8",
      tickets: "unicode/1f39f.png?v8",
      tiger: "unicode/1f42f.png?v8",
      tiger2: "unicode/1f405.png?v8",
      timer_clock: "unicode/23f2.png?v8",
      timor_leste: "unicode/1f1f9-1f1f1.png?v8",
      tipping_hand_man: "unicode/1f481-2642.png?v8",
      tipping_hand_person: "unicode/1f481.png?v8",
      tipping_hand_woman: "unicode/1f481-2640.png?v8",
      tired_face: "unicode/1f62b.png?v8",
      tm: "unicode/2122.png?v8",
      togo: "unicode/1f1f9-1f1ec.png?v8",
      toilet: "unicode/1f6bd.png?v8",
      tokelau: "unicode/1f1f9-1f1f0.png?v8",
      tokyo_tower: "unicode/1f5fc.png?v8",
      tomato: "unicode/1f345.png?v8",
      tonga: "unicode/1f1f9-1f1f4.png?v8",
      tongue: "unicode/1f445.png?v8",
      toolbox: "unicode/1f9f0.png?v8",
      tooth: "unicode/1f9b7.png?v8",
      toothbrush: "unicode/1faa5.png?v8",
      top: "unicode/1f51d.png?v8",
      tophat: "unicode/1f3a9.png?v8",
      tornado: "unicode/1f32a.png?v8",
      tr: "unicode/1f1f9-1f1f7.png?v8",
      trackball: "unicode/1f5b2.png?v8",
      tractor: "unicode/1f69c.png?v8",
      traffic_light: "unicode/1f6a5.png?v8",
      train: "unicode/1f68b.png?v8",
      train2: "unicode/1f686.png?v8",
      tram: "unicode/1f68a.png?v8",
      transgender_flag: "unicode/1f3f3-26a7.png?v8",
      transgender_symbol: "unicode/26a7.png?v8",
      triangular_flag_on_post: "unicode/1f6a9.png?v8",
      triangular_ruler: "unicode/1f4d0.png?v8",
      trident: "unicode/1f531.png?v8",
      trinidad_tobago: "unicode/1f1f9-1f1f9.png?v8",
      tristan_da_cunha: "unicode/1f1f9-1f1e6.png?v8",
      triumph: "unicode/1f624.png?v8",
      trolleybus: "unicode/1f68e.png?v8",
      trollface: "trollface.png?v8",
      trophy: "unicode/1f3c6.png?v8",
      tropical_drink: "unicode/1f379.png?v8",
      tropical_fish: "unicode/1f420.png?v8",
      truck: "unicode/1f69a.png?v8",
      trumpet: "unicode/1f3ba.png?v8",
      tshirt: "unicode/1f455.png?v8",
      tulip: "unicode/1f337.png?v8",
      tumbler_glass: "unicode/1f943.png?v8",
      tunisia: "unicode/1f1f9-1f1f3.png?v8",
      turkey: "unicode/1f983.png?v8",
      turkmenistan: "unicode/1f1f9-1f1f2.png?v8",
      turks_caicos_islands: "unicode/1f1f9-1f1e8.png?v8",
      turtle: "unicode/1f422.png?v8",
      tuvalu: "unicode/1f1f9-1f1fb.png?v8",
      tv: "unicode/1f4fa.png?v8",
      twisted_rightwards_arrows: "unicode/1f500.png?v8",
      two: "unicode/0032-20e3.png?v8",
      two_hearts: "unicode/1f495.png?v8",
      two_men_holding_hands: "unicode/1f46c.png?v8",
      two_women_holding_hands: "unicode/1f46d.png?v8",
      u5272: "unicode/1f239.png?v8",
      u5408: "unicode/1f234.png?v8",
      u55b6: "unicode/1f23a.png?v8",
      u6307: "unicode/1f22f.png?v8",
      u6708: "unicode/1f237.png?v8",
      u6709: "unicode/1f236.png?v8",
      u6e80: "unicode/1f235.png?v8",
      u7121: "unicode/1f21a.png?v8",
      u7533: "unicode/1f238.png?v8",
      u7981: "unicode/1f232.png?v8",
      u7a7a: "unicode/1f233.png?v8",
      uganda: "unicode/1f1fa-1f1ec.png?v8",
      uk: "unicode/1f1ec-1f1e7.png?v8",
      ukraine: "unicode/1f1fa-1f1e6.png?v8",
      umbrella: "unicode/2614.png?v8",
      unamused: "unicode/1f612.png?v8",
      underage: "unicode/1f51e.png?v8",
      unicorn: "unicode/1f984.png?v8",
      united_arab_emirates: "unicode/1f1e6-1f1ea.png?v8",
      united_nations: "unicode/1f1fa-1f1f3.png?v8",
      unlock: "unicode/1f513.png?v8",
      up: "unicode/1f199.png?v8",
      upside_down_face: "unicode/1f643.png?v8",
      uruguay: "unicode/1f1fa-1f1fe.png?v8",
      us: "unicode/1f1fa-1f1f8.png?v8",
      us_outlying_islands: "unicode/1f1fa-1f1f2.png?v8",
      us_virgin_islands: "unicode/1f1fb-1f1ee.png?v8",
      uzbekistan: "unicode/1f1fa-1f1ff.png?v8",
      v: "unicode/270c.png?v8",
      vampire: "unicode/1f9db.png?v8",
      vampire_man: "unicode/1f9db-2642.png?v8",
      vampire_woman: "unicode/1f9db-2640.png?v8",
      vanuatu: "unicode/1f1fb-1f1fa.png?v8",
      vatican_city: "unicode/1f1fb-1f1e6.png?v8",
      venezuela: "unicode/1f1fb-1f1ea.png?v8",
      vertical_traffic_light: "unicode/1f6a6.png?v8",
      vhs: "unicode/1f4fc.png?v8",
      vibration_mode: "unicode/1f4f3.png?v8",
      video_camera: "unicode/1f4f9.png?v8",
      video_game: "unicode/1f3ae.png?v8",
      vietnam: "unicode/1f1fb-1f1f3.png?v8",
      violin: "unicode/1f3bb.png?v8",
      virgo: "unicode/264d.png?v8",
      volcano: "unicode/1f30b.png?v8",
      volleyball: "unicode/1f3d0.png?v8",
      vomiting_face: "unicode/1f92e.png?v8",
      vs: "unicode/1f19a.png?v8",
      vulcan_salute: "unicode/1f596.png?v8",
      waffle: "unicode/1f9c7.png?v8",
      wales: "unicode/1f3f4-e0067-e0062-e0077-e006c-e0073-e007f.png?v8",
      walking: "unicode/1f6b6.png?v8",
      walking_man: "unicode/1f6b6-2642.png?v8",
      walking_woman: "unicode/1f6b6-2640.png?v8",
      wallis_futuna: "unicode/1f1fc-1f1eb.png?v8",
      waning_crescent_moon: "unicode/1f318.png?v8",
      waning_gibbous_moon: "unicode/1f316.png?v8",
      warning: "unicode/26a0.png?v8",
      wastebasket: "unicode/1f5d1.png?v8",
      watch: "unicode/231a.png?v8",
      water_buffalo: "unicode/1f403.png?v8",
      water_polo: "unicode/1f93d.png?v8",
      watermelon: "unicode/1f349.png?v8",
      wave: "unicode/1f44b.png?v8",
      wavy_dash: "unicode/3030.png?v8",
      waxing_crescent_moon: "unicode/1f312.png?v8",
      waxing_gibbous_moon: "unicode/1f314.png?v8",
      wc: "unicode/1f6be.png?v8",
      weary: "unicode/1f629.png?v8",
      wedding: "unicode/1f492.png?v8",
      weight_lifting: "unicode/1f3cb.png?v8",
      weight_lifting_man: "unicode/1f3cb-2642.png?v8",
      weight_lifting_woman: "unicode/1f3cb-2640.png?v8",
      western_sahara: "unicode/1f1ea-1f1ed.png?v8",
      whale: "unicode/1f433.png?v8",
      whale2: "unicode/1f40b.png?v8",
      wheel_of_dharma: "unicode/2638.png?v8",
      wheelchair: "unicode/267f.png?v8",
      white_check_mark: "unicode/2705.png?v8",
      white_circle: "unicode/26aa.png?v8",
      white_flag: "unicode/1f3f3.png?v8",
      white_flower: "unicode/1f4ae.png?v8",
      white_haired_man: "unicode/1f468-1f9b3.png?v8",
      white_haired_woman: "unicode/1f469-1f9b3.png?v8",
      white_heart: "unicode/1f90d.png?v8",
      white_large_square: "unicode/2b1c.png?v8",
      white_medium_small_square: "unicode/25fd.png?v8",
      white_medium_square: "unicode/25fb.png?v8",
      white_small_square: "unicode/25ab.png?v8",
      white_square_button: "unicode/1f533.png?v8",
      wilted_flower: "unicode/1f940.png?v8",
      wind_chime: "unicode/1f390.png?v8",
      wind_face: "unicode/1f32c.png?v8",
      window: "unicode/1fa9f.png?v8",
      wine_glass: "unicode/1f377.png?v8",
      wink: "unicode/1f609.png?v8",
      wolf: "unicode/1f43a.png?v8",
      woman: "unicode/1f469.png?v8",
      woman_artist: "unicode/1f469-1f3a8.png?v8",
      woman_astronaut: "unicode/1f469-1f680.png?v8",
      woman_beard: "unicode/1f9d4-2640.png?v8",
      woman_cartwheeling: "unicode/1f938-2640.png?v8",
      woman_cook: "unicode/1f469-1f373.png?v8",
      woman_dancing: "unicode/1f483.png?v8",
      woman_facepalming: "unicode/1f926-2640.png?v8",
      woman_factory_worker: "unicode/1f469-1f3ed.png?v8",
      woman_farmer: "unicode/1f469-1f33e.png?v8",
      woman_feeding_baby: "unicode/1f469-1f37c.png?v8",
      woman_firefighter: "unicode/1f469-1f692.png?v8",
      woman_health_worker: "unicode/1f469-2695.png?v8",
      woman_in_manual_wheelchair: "unicode/1f469-1f9bd.png?v8",
      woman_in_motorized_wheelchair: "unicode/1f469-1f9bc.png?v8",
      woman_in_tuxedo: "unicode/1f935-2640.png?v8",
      woman_judge: "unicode/1f469-2696.png?v8",
      woman_juggling: "unicode/1f939-2640.png?v8",
      woman_mechanic: "unicode/1f469-1f527.png?v8",
      woman_office_worker: "unicode/1f469-1f4bc.png?v8",
      woman_pilot: "unicode/1f469-2708.png?v8",
      woman_playing_handball: "unicode/1f93e-2640.png?v8",
      woman_playing_water_polo: "unicode/1f93d-2640.png?v8",
      woman_scientist: "unicode/1f469-1f52c.png?v8",
      woman_shrugging: "unicode/1f937-2640.png?v8",
      woman_singer: "unicode/1f469-1f3a4.png?v8",
      woman_student: "unicode/1f469-1f393.png?v8",
      woman_teacher: "unicode/1f469-1f3eb.png?v8",
      woman_technologist: "unicode/1f469-1f4bb.png?v8",
      woman_with_headscarf: "unicode/1f9d5.png?v8",
      woman_with_probing_cane: "unicode/1f469-1f9af.png?v8",
      woman_with_turban: "unicode/1f473-2640.png?v8",
      woman_with_veil: "unicode/1f470-2640.png?v8",
      womans_clothes: "unicode/1f45a.png?v8",
      womans_hat: "unicode/1f452.png?v8",
      women_wrestling: "unicode/1f93c-2640.png?v8",
      womens: "unicode/1f6ba.png?v8",
      wood: "unicode/1fab5.png?v8",
      woozy_face: "unicode/1f974.png?v8",
      world_map: "unicode/1f5fa.png?v8",
      worm: "unicode/1fab1.png?v8",
      worried: "unicode/1f61f.png?v8",
      wrench: "unicode/1f527.png?v8",
      wrestling: "unicode/1f93c.png?v8",
      writing_hand: "unicode/270d.png?v8",
      x: "unicode/274c.png?v8",
      yarn: "unicode/1f9f6.png?v8",
      yawning_face: "unicode/1f971.png?v8",
      yellow_circle: "unicode/1f7e1.png?v8",
      yellow_heart: "unicode/1f49b.png?v8",
      yellow_square: "unicode/1f7e8.png?v8",
      yemen: "unicode/1f1fe-1f1ea.png?v8",
      yen: "unicode/1f4b4.png?v8",
      yin_yang: "unicode/262f.png?v8",
      yo_yo: "unicode/1fa80.png?v8",
      yum: "unicode/1f60b.png?v8",
      zambia: "unicode/1f1ff-1f1f2.png?v8",
      zany_face: "unicode/1f92a.png?v8",
      zap: "unicode/26a1.png?v8",
      zebra: "unicode/1f993.png?v8",
      zero: "unicode/0030-20e3.png?v8",
      zimbabwe: "unicode/1f1ff-1f1fc.png?v8",
      zipper_mouth_face: "unicode/1f910.png?v8",
      zombie: "unicode/1f9df.png?v8",
      zombie_man: "unicode/1f9df-2642.png?v8",
      zombie_woman: "unicode/1f9df-2640.png?v8",
      zzz: "unicode/1f4a4.png?v8"
    }
  };

  function jn(e, t) {
    return e.replace(/<(code|pre|script|template)[^>]*?>[\s\S]+?<\/(code|pre|script|template)>/g, function (e) {
      return e.replace(/:/g, "__colon__")
    }).replace(/<!--[\s\S]+?-->/g, function (e) {
      return e.replace(/:/g, "__colon__")
    }).replace(/([a-z]{2,}:)?\/\/[^\s'">)]+/gi, function (e) {
      return e.replace(/:/g, "__colon__")
    }).replace(/:([a-z0-9_\-+]+?):/g, function (e, n) {
      return i = e, o = n, e = t, n = Cn.data[o], i, i = n ? e && /unicode/.test(n) ? '<span class="emoji">' + n.replace("unicode/", "").replace(/\.png.*/, "").split("-").map(function (e) {
        return "&#x" + e + ";"
      }).join("&zwj;").concat("&#xFE0E;") + "</span>" : '<img src="' + Cn.baseURL + n + '.png" alt="' + o + '" class="emoji" loading="lazy">' : i;
      var i, o
    }).replace(/__colon__/g, ":")
  }

  function Ln(e) {
    var o = {};
    return {
      str: e = (e = void 0 === e ? "" : e) && e.replace(/^('|")/, "").replace(/('|")$/, "").replace(/(?:^|\s):([\w-]+:?)=?([\w-%]+)?/g, function (e, n, i) {
        return -1 === n.indexOf(":") ? (o[n] = i && i.replace(/&quot;/g, "") || !0, "") : e
      }).trim(),
      config: o
    }
  }

  function On(e) {
    return (e = void 0 === e ? "" : e).replace(/(<\/?a.*?>)/gi, "")
  }
  var qn, Pn = be(function (e) {
    var u, f, p, d, n, g = function (u) {
      var i = /(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,
        n = 0,
        e = {},
        R = {
          manual: u.Prism && u.Prism.manual,
          disableWorkerMessageHandler: u.Prism && u.Prism.disableWorkerMessageHandler,
          util: {
            encode: function e(n) {
              return n instanceof T ? new T(n.type, e(n.content), n.alias) : Array.isArray(n) ? n.map(e) : n.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/\u00a0/g, " ")
            },
            type: function (e) {
              return Object.prototype.toString.call(e).slice(8, -1)
            },
            objId: function (e) {
              return e.__id || Object.defineProperty(e, "__id", {
                value: ++n
              }), e.__id
            },
            clone: function i(e, o) {
              var t, n;
              switch (o = o || {}, R.util.type(e)) {
                case "Object":
                  if (n = R.util.objId(e), o[n]) return o[n];
                  for (var a in t = {}, o[n] = t, e) e.hasOwnProperty(a) && (t[a] = i(e[a], o));
                  return t;
                case "Array":
                  return (n = R.util.objId(e), o[n]) ? o[n] : (t = [], o[n] = t, e.forEach(function (e, n) {
                    t[n] = i(e, o)
                  }), t);
                default:
                  return e
              }
            },
            getLanguage: function (e) {
              for (; e;) {
                var n = i.exec(e.className);
                if (n) return n[1].toLowerCase();
                e = e.parentElement
              }
              return "none"
            },
            setLanguage: function (e, n) {
              e.className = e.className.replace(RegExp(i, "gi"), ""), e.classList.add("language-" + n)
            },
            currentScript: function () {
              if ("undefined" == typeof document) return null;
              if ("currentScript" in document) return document.currentScript;
              try {
                throw new Error
              } catch (e) {
                var n = (/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(e.stack) || [])[1];
                if (n) {
                  var i, o = document.getElementsByTagName("script");
                  for (i in o)
                    if (o[i].src == n) return o[i]
                }
                return null
              }
            },
            isActive: function (e, n, i) {
              for (var o = "no-" + n; e;) {
                var t = e.classList;
                if (t.contains(n)) return !0;
                if (t.contains(o)) return !1;
                e = e.parentElement
              }
              return !!i
            }
          },
          languages: {
            plain: e,
            plaintext: e,
            text: e,
            txt: e,
            extend: function (e, n) {
              var i, o = R.util.clone(R.languages[e]);
              for (i in n) o[i] = n[i];
              return o
            },
            insertBefore: function (i, e, n, o) {
              var t, a = (o = o || R.languages)[i],
                r = {};
              for (t in a)
                if (a.hasOwnProperty(t)) {
                  if (t == e)
                    for (var c in n) n.hasOwnProperty(c) && (r[c] = n[c]);
                  n.hasOwnProperty(t) || (r[t] = a[t])
                } var u = o[i];
              return o[i] = r, R.languages.DFS(R.languages, function (e, n) {
                n === u && e != i && (this[e] = r)
              }), r
            },
            DFS: function e(n, i, o, t) {
              t = t || {};
              var a, r, c, u = R.util.objId;
              for (a in n) n.hasOwnProperty(a) && (i.call(n, a, n[a], o || a), r = n[a], "Object" !== (c = R.util.type(r)) || t[u(r)] ? "Array" !== c || t[u(r)] || (t[u(r)] = !0, e(r, i, a, t)) : (t[u(r)] = !0, e(r, i, null, t)))
            }
          },
          plugins: {},
          highlightAll: function (e, n) {
            R.highlightAllUnder(document, e, n)
          },
          highlightAllUnder: function (e, n, i) {
            var o = {
              callback: i,
              container: e,
              selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'
            };
            R.hooks.run("before-highlightall", o), o.elements = Array.prototype.slice.apply(o.container.querySelectorAll(o.selector)), R.hooks.run("before-all-elements-highlight", o);
            for (var t, a = 0; t = o.elements[a++];) R.highlightElement(t, !0 === n, o.callback)
          },
          highlightElement: function (e, n, i) {
            var o = R.util.getLanguage(e),
              t = R.languages[o];
            R.util.setLanguage(e, o);
            var a = e.parentElement;
            a && "pre" === a.nodeName.toLowerCase() && R.util.setLanguage(a, o);
            var r = {
              element: e,
              language: o,
              grammar: t,
              code: e.textContent
            };

            function c(e) {
              r.highlightedCode = e, R.hooks.run("before-insert", r), r.element.innerHTML = r.highlightedCode, R.hooks.run("after-highlight", r), R.hooks.run("complete", r), i && i.call(r.element)
            }
            if (R.hooks.run("before-sanity-check", r), (a = r.element.parentElement) && "pre" === a.nodeName.toLowerCase() && !a.hasAttribute("tabindex") && a.setAttribute("tabindex", "0"), !r.code) return R.hooks.run("complete", r), void(i && i.call(r.element));
            R.hooks.run("before-highlight", r), r.grammar ? n && u.Worker ? ((n = new Worker(R.filename)).onmessage = function (e) {
              c(e.data)
            }, n.postMessage(JSON.stringify({
              language: r.language,
              code: r.code,
              immediateClose: !0
            }))) : c(R.highlight(r.code, r.grammar, r.language)) : c(R.util.encode(r.code))
          },
          highlight: function (e, n, i) {
            i = {
              code: e,
              grammar: n,
              language: i
            };
            if (R.hooks.run("before-tokenize", i), !i.grammar) throw new Error('The language "' + i.language + '" has no grammar.');
            return i.tokens = R.tokenize(i.code, i.grammar), R.hooks.run("after-tokenize", i), T.stringify(R.util.encode(i.tokens), i.language)
          },
          tokenize: function (e, n) {
            var i = n.rest;
            if (i) {
              for (var o in i) n[o] = i[o];
              delete n.rest
            }
            var t = new a;
            return j(t, t.head, e),
              function e(n, i, o, t, a, r) {
                for (var c in o)
                  if (o.hasOwnProperty(c) && o[c]) {
                    var u = o[c];
                    u = Array.isArray(u) ? u : [u];
                    for (var f = 0; f < u.length; ++f) {
                      if (r && r.cause == c + "," + f) return;
                      var p, d = u[f],
                        g = d.inside,
                        s = !!d.lookbehind,
                        l = !!d.greedy,
                        v = d.alias;
                      l && !d.pattern.global && (p = d.pattern.toString().match(/[imsuy]*$/)[0], d.pattern = RegExp(d.pattern.source, p + "g"));
                      for (var h = d.pattern || d, _ = t.next, m = a; _ !== i.tail && !(r && m >= r.reach); m += _.value.length, _ = _.next) {
                        var b = _.value;
                        if (i.length > n.length) return;
                        if (!(b instanceof T)) {
                          var k, w = 1;
                          if (l) {
                            if (!(k = C(h, m, n, s)) || k.index >= n.length) break;
                            var y = k.index,
                              x = k.index + k[0].length,
                              S = m;
                            for (S += _.value.length; S <= y;) _ = _.next, S += _.value.length;
                            if (S -= _.value.length, m = S, _.value instanceof T) continue;
                            for (var A = _; A !== i.tail && (S < x || "string" == typeof A.value); A = A.next) w++, S += A.value.length;
                            w--, b = n.slice(m, S), k.index -= m
                          } else if (!(k = C(h, 0, b, s))) continue;
                          var y = k.index,
                            $ = k[0],
                            z = b.slice(0, y),
                            F = b.slice(y + $.length),
                            E = m + b.length;
                          r && E > r.reach && (r.reach = E);
                          b = _.prev;
                          z && (b = j(i, b, z), m += z.length), L(i, b, w);
                          $ = new T(c, g ? R.tokenize($, g) : $, v, $);
                          _ = j(i, b, $), F && j(i, _, F), 1 < w && (E = {
                            cause: c + "," + f,
                            reach: E
                          }, e(n, i, o, _.prev, m, E), r && E.reach > r.reach && (r.reach = E.reach))
                        }
                      }
                    }
                  }
              }(e, t, n, t.head, 0),
              function (e) {
                var n = [],
                  i = e.head.next;
                for (; i !== e.tail;) n.push(i.value), i = i.next;
                return n
              }(t)
          },
          hooks: {
            all: {},
            add: function (e, n) {
              var i = R.hooks.all;
              i[e] = i[e] || [], i[e].push(n)
            },
            run: function (e, n) {
              var i = R.hooks.all[e];
              if (i && i.length)
                for (var o, t = 0; o = i[t++];) o(n)
            }
          },
          Token: T
        };

      function T(e, n, i, o) {
        this.type = e, this.content = n, this.alias = i, this.length = 0 | (o || "").length
      }

      function C(e, n, i, o) {
        e.lastIndex = n;
        i = e.exec(i);
        return i && o && i[1] && (o = i[1].length, i.index += o, i[0] = i[0].slice(o)), i
      }

      function a() {
        var e = {
            value: null,
            prev: null,
            next: null
          },
          n = {
            value: null,
            prev: e,
            next: null
          };
        e.next = n, this.head = e, this.tail = n, this.length = 0
      }

      function j(e, n, i) {
        var o = n.next,
          i = {
            value: i,
            prev: n,
            next: o
          };
        return n.next = i, o.prev = i, e.length++, i
      }

      function L(e, n, i) {
        for (var o = n.next, t = 0; t < i && o !== e.tail; t++) o = o.next;
        (n.next = o).prev = n, e.length -= t
      }
      if (u.Prism = R, T.stringify = function n(e, i) {
          if ("string" == typeof e) return e;
          if (Array.isArray(e)) {
            var o = "";
            return e.forEach(function (e) {
              o += n(e, i)
            }), o
          }
          var t = {
              type: e.type,
              content: n(e.content, i),
              tag: "span",
              classes: ["token", e.type],
              attributes: {},
              language: i
            },
            e = e.alias;
          e && (Array.isArray(e) ? Array.prototype.push.apply(t.classes, e) : t.classes.push(e)), R.hooks.run("wrap", t);
          var a, r = "";
          for (a in t.attributes) r += " " + a + '="' + (t.attributes[a] || "").replace(/"/g, "&quot;") + '"';
          return "<" + t.tag + ' class="' + t.classes.join(" ") + '"' + r + ">" + t.content + "</" + t.tag + ">"
        }, !u.document) return u.addEventListener && (R.disableWorkerMessageHandler || u.addEventListener("message", function (e) {
        var n = JSON.parse(e.data),
          i = n.language,
          e = n.code,
          n = n.immediateClose;
        u.postMessage(R.highlight(e, R.languages[i], i)), n && u.close()
      }, !1)), R;
      var o = R.util.currentScript();

      function t() {
        R.manual || R.highlightAll()
      }
      return o && (R.filename = o.src, o.hasAttribute("data-manual") && (R.manual = !0)), R.manual || ("loading" === (e = document.readyState) || "interactive" === e && o && o.defer ? document.addEventListener("DOMContentLoaded", t) : window.requestAnimationFrame ? window.requestAnimationFrame(t) : window.setTimeout(t, 16)), R
    }("undefined" != typeof window ? window : "undefined" != typeof WorkerGlobalScope && self instanceof WorkerGlobalScope ? self : {});
    e.exports && (e.exports = g), void 0 !== me && (me.Prism = g), g.languages.markup = {
        comment: {
          pattern: /<!--(?:(?!<!--)[\s\S])*?-->/,
          greedy: !0
        },
        prolog: {
          pattern: /<\?[\s\S]+?\?>/,
          greedy: !0
        },
        doctype: {
          pattern: /<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,
          greedy: !0,
          inside: {
            "internal-subset": {
              pattern: /(^[^\[]*\[)[\s\S]+(?=\]>$)/,
              lookbehind: !0,
              greedy: !0,
              inside: null
            },
            string: {
              pattern: /"[^"]*"|'[^']*'/,
              greedy: !0
            },
            punctuation: /^<!|>$|[[\]]/,
            "doctype-tag": /^DOCTYPE/i,
            name: /[^\s<>'"]+/
          }
        },
        cdata: {
          pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
          greedy: !0
        },
        tag: {
          pattern: /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,
          greedy: !0,
          inside: {
            tag: {
              pattern: /^<\/?[^\s>\/]+/,
              inside: {
                punctuation: /^<\/?/,
                namespace: /^[^\s>\/:]+:/
              }
            },
            "special-attr": [],
            "attr-value": {
              pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,
              inside: {
                punctuation: [{
                  pattern: /^=/,
                  alias: "attr-equals"
                }, {
                  pattern: /^(\s*)["']|["']$/,
                  lookbehind: !0
                }]
              }
            },
            punctuation: /\/?>/,
            "attr-name": {
              pattern: /[^\s>\/]+/,
              inside: {
                namespace: /^[^\s>\/:]+:/
              }
            }
          }
        },
        entity: [{
          pattern: /&[\da-z]{1,8};/i,
          alias: "named-entity"
        }, /&#x?[\da-f]{1,8};/i]
      }, g.languages.markup.tag.inside["attr-value"].inside.entity = g.languages.markup.entity, g.languages.markup.doctype.inside["internal-subset"].inside = g.languages.markup, g.hooks.add("wrap", function (e) {
        "entity" === e.type && (e.attributes.title = e.content.replace(/&amp;/, "&"))
      }), Object.defineProperty(g.languages.markup.tag, "addInlined", {
        value: function (e, n) {
          var i = {};
          i["language-" + n] = {
            pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,
            lookbehind: !0,
            inside: g.languages[n]
          }, i.cdata = /^<!\[CDATA\[|\]\]>$/i;
          i = {
            "included-cdata": {
              pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
              inside: i
            }
          };
          i["language-" + n] = {
            pattern: /[\s\S]+/,
            inside: g.languages[n]
          };
          n = {};
          n[e] = {
            pattern: RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g, function () {
              return e
            }), "i"),
            lookbehind: !0,
            greedy: !0,
            inside: i
          }, g.languages.insertBefore("markup", "cdata", n)
        }
      }), Object.defineProperty(g.languages.markup.tag, "addAttribute", {
        value: function (e, n) {
          g.languages.markup.tag.inside["special-attr"].push({
            pattern: RegExp(/(^|["'\s])/.source + "(?:" + e + ")" + /\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source, "i"),
            lookbehind: !0,
            inside: {
              "attr-name": /^[^\s=]+/,
              "attr-value": {
                pattern: /=[\s\S]+/,
                inside: {
                  value: {
                    pattern: /(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,
                    lookbehind: !0,
                    alias: [n, "language-" + n],
                    inside: g.languages[n]
                  },
                  punctuation: [{
                    pattern: /^=/,
                    alias: "attr-equals"
                  }, /"|'/]
                }
              }
            }
          })
        }
      }), g.languages.html = g.languages.markup, g.languages.mathml = g.languages.markup, g.languages.svg = g.languages.markup, g.languages.xml = g.languages.extend("markup", {}), g.languages.ssml = g.languages.xml, g.languages.atom = g.languages.xml, g.languages.rss = g.languages.xml,
      function (e) {
        var n = /(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;
        e.languages.css = {
          comment: /\/\*[\s\S]*?\*\//,
          atrule: {
            pattern: RegExp("@[\\w-](?:" + /[^;{\s"']|\s+(?!\s)/.source + "|" + n.source + ")*?" + /(?:;|(?=\s*\{))/.source),
            inside: {
              rule: /^@[\w-]+/,
              "selector-function-argument": {
                pattern: /(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,
                lookbehind: !0,
                alias: "selector"
              },
              keyword: {
                pattern: /(^|[^\w-])(?:and|not|only|or)(?![\w-])/,
                lookbehind: !0
              }
            }
          },
          url: {
            pattern: RegExp("\\burl\\((?:" + n.source + "|" + /(?:[^\\\r\n()"']|\\[\s\S])*/.source + ")\\)", "i"),
            greedy: !0,
            inside: {
              function: /^url/i,
              punctuation: /^\(|\)$/,
              string: {
                pattern: RegExp("^" + n.source + "$"),
                alias: "url"
              }
            }
          },
          selector: {
            pattern: RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|" + n.source + ")*(?=\\s*\\{)"),
            lookbehind: !0
          },
          string: {
            pattern: n,
            greedy: !0
          },
          property: {
            pattern: /(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,
            lookbehind: !0
          },
          important: /!important\b/i,
          function: {
            pattern: /(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,
            lookbehind: !0
          },
          punctuation: /[(){};:,]/
        }, e.languages.css.atrule.inside.rest = e.languages.css;
        e = e.languages.markup;
        e && (e.tag.addInlined("style", "css"), e.tag.addAttribute("style", "css"))
      }(g), g.languages.clike = {
        comment: [{
          pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
          lookbehind: !0,
          greedy: !0
        }, {
          pattern: /(^|[^\\:])\/\/.*/,
          lookbehind: !0,
          greedy: !0
        }],
        string: {
          pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
          greedy: !0
        },
        "class-name": {
          pattern: /(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,
          lookbehind: !0,
          inside: {
            punctuation: /[.\\]/
          }
        },
        keyword: /\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,
        boolean: /\b(?:false|true)\b/,
        function: /\b\w+(?=\()/,
        number: /\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,
        operator: /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
        punctuation: /[{}[\];(),.:]/
      }, g.languages.javascript = g.languages.extend("clike", {
        "class-name": [g.languages.clike["class-name"], {
          pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,
          lookbehind: !0
        }],
        keyword: [{
          pattern: /((?:^|\})\s*)catch\b/,
          lookbehind: !0
        }, {
          pattern: /(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,
          lookbehind: !0
        }],
        function: /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,
        number: {
          pattern: RegExp(/(^|[^\w$])/.source + "(?:" + /NaN|Infinity/.source + "|" + /0[bB][01]+(?:_[01]+)*n?/.source + "|" + /0[oO][0-7]+(?:_[0-7]+)*n?/.source + "|" + /0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source + "|" + /\d+(?:_\d+)*n/.source + "|" + /(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source + ")" + /(?![\w$])/.source),
          lookbehind: !0
        },
        operator: /--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/
      }), g.languages.javascript["class-name"][0].pattern = /(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/, g.languages.insertBefore("javascript", "keyword", {
        regex: {
          pattern: RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source + /\//.source + "(?:" + /(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source + "|" + /(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source + ")" + /(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),
          lookbehind: !0,
          greedy: !0,
          inside: {
            "regex-source": {
              pattern: /^(\/)[\s\S]+(?=\/[a-z]*$)/,
              lookbehind: !0,
              alias: "language-regex",
              inside: g.languages.regex
            },
            "regex-delimiter": /^\/|\/$/,
            "regex-flags": /^[a-z]+$/
          }
        },
        "function-variable": {
          pattern: /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,
          alias: "function"
        },
        parameter: [{
          pattern: /(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,
          lookbehind: !0,
          inside: g.languages.javascript
        }, {
          pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,
          lookbehind: !0,
          inside: g.languages.javascript
        }, {
          pattern: /(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,
          lookbehind: !0,
          inside: g.languages.javascript
        }, {
          pattern: /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,
          lookbehind: !0,
          inside: g.languages.javascript
        }],
        constant: /\b[A-Z](?:[A-Z_]|\dx?)*\b/
      }), g.languages.insertBefore("javascript", "string", {
        hashbang: {
          pattern: /^#!.*/,
          greedy: !0,
          alias: "comment"
        },
        "template-string": {
          pattern: /`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,
          greedy: !0,
          inside: {
            "template-punctuation": {
              pattern: /^`|`$/,
              alias: "string"
            },
            interpolation: {
              pattern: /((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,
              lookbehind: !0,
              inside: {
                "interpolation-punctuation": {
                  pattern: /^\$\{|\}$/,
                  alias: "punctuation"
                },
                rest: g.languages.javascript
              }
            },
            string: /[\s\S]+/
          }
        },
        "string-property": {
          pattern: /((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,
          lookbehind: !0,
          greedy: !0,
          alias: "property"
        }
      }), g.languages.insertBefore("javascript", "operator", {
        "literal-property": {
          pattern: /((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,
          lookbehind: !0,
          alias: "property"
        }
      }), g.languages.markup && (g.languages.markup.tag.addInlined("script", "javascript"), g.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source, "javascript")), g.languages.js = g.languages.javascript, void 0 !== g && "undefined" != typeof document && (Element.prototype.matches || (Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector), u = {
        js: "javascript",
        py: "python",
        rb: "ruby",
        ps1: "powershell",
        psm1: "powershell",
        sh: "bash",
        bat: "batch",
        h: "c",
        tex: "latex"
      }, d = "pre[data-src]:not([" + (f = "data-src-status") + '="loaded"]):not([' + f + '="' + (p = "loading") + '"])', g.hooks.add("before-highlightall", function (e) {
        e.selector += ", " + d
      }), g.hooks.add("before-sanity-check", function (e) {
        var t, n, i, o, a, r, c = e.element;
        c.matches(d) && (e.code = "", c.setAttribute(f, p), (t = c.appendChild(document.createElement("CODE"))).textContent = "Loading…", i = c.getAttribute("data-src"), "none" === (e = e.language) && (n = (/\.(\w+)$/.exec(i) || [, "none"])[1], e = u[n] || n), g.util.setLanguage(t, e), g.util.setLanguage(c, e), (n = g.plugins.autoloader) && n.loadLanguages(e), i = i, o = function (e) {
          c.setAttribute(f, "loaded");
          var n, i, o = function (e) {
            if (i = /^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(e || "")) {
              var n = Number(i[1]),
                e = i[2],
                i = i[3];
              return e ? i ? [n, Number(i)] : [n, void 0] : [n, n]
            }
          }(c.getAttribute("data-range"));
          o && (n = e.split(/\r\n?|\n/g), i = o[0], o = null == o[1] ? n.length : o[1], i < 0 && (i += n.length), i = Math.max(0, Math.min(i - 1, n.length)), o < 0 && (o += n.length), o = Math.max(0, Math.min(o, n.length)), e = n.slice(i, o).join("\n"), c.hasAttribute("data-start") || c.setAttribute("data-start", String(i + 1))), t.textContent = e, g.highlightElement(t)
        }, a = function (e) {
          c.setAttribute(f, "failed"), t.textContent = e
        }, (r = new XMLHttpRequest).open("GET", i, !0), r.onreadystatechange = function () {
          4 == r.readyState && (r.status < 400 && r.responseText ? o(r.responseText) : 400 <= r.status ? a("✖ Error " + r.status + " while fetching file: " + r.statusText) : a("✖ Error: File does not exist or is empty"))
        }, r.send(null))
      }), n = !(g.plugins.fileHighlight = {
        highlight: function (e) {
          for (var n, i = (e || document).querySelectorAll(d), o = 0; n = i[o++];) g.highlightElement(n)
        }
      }), g.fileHighlight = function () {
        n || (console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."), n = !0), g.plugins.fileHighlight.highlight.apply(this, arguments)
      })
  });

  function Mn(e, n) {
    return "___" + e.toUpperCase() + n + "___"
  }
  qn = Prism, Object.defineProperties(qn.languages["markup-templating"] = {}, {
    buildPlaceholders: {
      value: function (o, t, e, a) {
        var r;
        o.language === t && (r = o.tokenStack = [], o.code = o.code.replace(e, function (e) {
          if ("function" == typeof a && !a(e)) return e;
          for (var n, i = r.length; - 1 !== o.code.indexOf(n = Mn(t, i));) ++i;
          return r[i] = e, n
        }), o.grammar = qn.languages.markup)
      }
    },
    tokenizePlaceholders: {
      value: function (f, p) {
        var d, g;
        f.language === p && f.tokenStack && (f.grammar = qn.languages[p], d = 0, g = Object.keys(f.tokenStack), function e(n) {
          for (var i = 0; i < n.length && !(d >= g.length); i++) {
            var o, t, a, r, c, u = n[i];
            "string" == typeof u || u.content && "string" == typeof u.content ? (t = g[d], a = f.tokenStack[t], o = "string" == typeof u ? u : u.content, c = Mn(p, t), -1 < (r = o.indexOf(c)) && (++d, t = o.substring(0, r), a = new qn.Token(p, qn.tokenize(a, f.grammar), "language-" + p, a), r = o.substring(r + c.length), c = [], t && c.push.apply(c, e([t])), c.push(a), r && c.push.apply(c, e([r])), "string" == typeof u ? n.splice.apply(n, [i, 1].concat(c)) : u.content = c)) : u.content && e(u.content)
          }
          return n
        }(f.tokens))
      }
    }
  });

  function In(t, e) {
    var a = this;
    this.config = t, this.router = e, this.cacheTree = {}, this.toc = [], this.cacheTOC = {}, this.linkTarget = t.externalLinkTarget || "_blank", this.linkRel = "_blank" === this.linkTarget ? t.externalLinkRel || "noopener" : "", this.contentBase = e.getBasePath();
    var n = this._initRenderer();
    this.heading = n.heading;
    var r = o(e = t.markdown || {}) ? e(Sn, n) : (Sn.setOptions(m(e, {
      renderer: m(n, e.renderer)
    })), Sn);
    this._marked = r, this.compile = function (i) {
      var o = !0,
        e = c(function (e) {
          o = !1;
          var n = "";
          return i && (n = f(i) ? r(i) : r.parser(i), n = t.noEmoji ? n : jn(n, t.nativeEmoji), Tn.clear(), n)
        })(i),
        n = a.router.parse().file;
      return o ? a.toc = a.cacheTOC[n] : a.cacheTOC[n] = [].concat(a.toc), e
    }
  }
  var Nn = {},
    Hn = {
      markdown: function (e) {
        return {
          url: e
        }
      },
      mermaid: function (e) {
        return {
          url: e
        }
      },
      iframe: function (e, n) {
        return {
          html: '<iframe src="' + e + '" ' + (n || "width=100% height=400") + "></iframe>"
        }
      },
      video: function (e, n) {
        return {
          html: '<video src="' + e + '" ' + (n || "controls") + ">Not Support</video>"
        }
      },
      audio: function (e, n) {
        return {
          html: '<audio src="' + e + '" ' + (n || "controls") + ">Not Support</audio>"
        }
      },
      code: function (e, n) {
        var i = e.match(/\.(\w+)$/);
        return {
          url: e,
          lang: i = "md" === (i = n || i && i[1]) ? "markdown" : i
        }
      }
    };
  In.prototype.compileEmbed = function (e, n) {
    var i, o, t = Ln(n),
      a = t.str,
      t = t.config;
    if (n = a, t.include) return R(e) || (e = q(this.contentBase, C(this.router.getCurrentPath()), e)), t.type && (o = Hn[t.type]) ? (i = o.call(this, e, n)).type = t.type : (o = "code", /\.(md|markdown)/.test(e) ? o = "markdown" : /\.mmd/.test(e) ? o = "mermaid" : /\.html?/.test(e) ? o = "iframe" : /\.(mp4|ogg)/.test(e) ? o = "video" : /\.mp3/.test(e) && (o = "audio"), (i = Hn[o].call(this, e, n)).type = o), i.fragment = t.fragment, i
  }, In.prototype._matchNotCompileLink = function (e) {
    for (var n = this.config.noCompileLinks || [], i = 0; i < n.length; i++) {
      var o = n[i];
      if ((Nn[o] || (Nn[o] = new RegExp("^" + o + "$"))).test(e)) return e
    }
  }, In.prototype._initRenderer = function () {
    var r, c, u, f, p, d, e = new Sn.Renderer,
      n = this.linkTarget,
      i = this.linkRel,
      a = this.router,
      o = this.contentBase,
      g = this,
      t = {};
    return t.heading = e.heading = function (e, n) {
      var i = Ln(e),
        o = i.str,
        t = i.config,
        e = {
          level: n,
          title: On(o)
        };
      /<!-- {docsify-ignore} -->/g.test(o) && (o = o.replace("\x3c!-- {docsify-ignore} --\x3e", ""), e.title = On(o), e.ignoreSubHeading = !0), /{docsify-ignore}/g.test(o) && (o = o.replace("{docsify-ignore}", ""), e.title = On(o), e.ignoreSubHeading = !0), /<!-- {docsify-ignore-all} -->/g.test(o) && (o = o.replace("\x3c!-- {docsify-ignore-all} --\x3e", ""), e.title = On(o), e.ignoreAllSubs = !0), /{docsify-ignore-all}/g.test(o) && (o = o.replace("{docsify-ignore-all}", ""), e.title = On(o), e.ignoreAllSubs = !0);
      i = Tn(t.id || o), t = a.toURL(a.getCurrentPath(), {
        id: i
      });
      return e.slug = t, g.toc.push(e), "<h" + n + ' id="' + i + '"><a href="' + t + '" data-id="' + i + '" class="anchor"><span>' + o + "</span></a></h" + n + ">"
    }, t.code = {
      renderer: e
    }.renderer.code = function (e, n) {
      var i = Pn.languages[n = void 0 === n ? "markup" : n] || Pn.languages.markup;
      return '<pre v-pre data-lang="' + n + '"><code class="lang-' + n + '">' + Pn.highlight(e.replace(/@DOCSIFY_QM@/g, "`"), i, n) + "</code></pre>"
    }, t.link = (i = (n = {
      renderer: e,
      router: a,
      linkTarget: n,
      linkRel: i,
      compilerClass: g
    }).renderer, c = n.router, u = n.linkTarget, n.linkRel, f = n.compilerClass, i.link = function (e, n, i) {
      var o = [],
        t = Ln(n = void 0 === n ? "" : n),
        a = t.str,
        t = t.config;
      return u = t.target || u, r = "_blank" === u ? f.config.externalLinkRel || "noopener" : "", n = a, R(e) || f._matchNotCompileLink(e) || t.ignore ? (R(e) || "./" !== e.slice(0, 2) || (e = document.URL.replace(/\/(?!.*\/).*/, "/").replace("#/./", "") + e), o.push(0 === e.indexOf("mailto:") ? "" : 'target="' + u + '"'), o.push(0 !== e.indexOf("mailto:") && "" !== r ? ' rel="' + r + '"' : "")) : (e === f.config.homepage && (e = "README"), e = c.toURL(e, null, c.getCurrentPath())), t.disabled && (o.push("disabled"), e = "javascript:void(0)"), t.class && o.push('class="' + t.class + '"'), t.id && o.push('id="' + t.id + '"'), n && o.push('title="' + n + '"'), '<a href="' + e + '" ' + o.join(" ") + ">" + i + "</a>"
    }), t.paragraph = {
      renderer: e
    }.renderer.paragraph = function (e) {
      e = /^!&gt;/.test(e) ? $n("tip", e) : /^\?&gt;/.test(e) ? $n("warn", e) : "<p>" + e + "</p>";
      return e
    }, t.image = (o = (i = {
      renderer: e,
      contentBase: o,
      router: a
    }).renderer, p = i.contentBase, d = i.router, o.image = function (e, n, i) {
      var o = e,
        t = [],
        a = Ln(n),
        r = a.str,
        a = a.config;
      return n = r, a["no-zoom"] && t.push("data-no-zoom"), n && t.push('title="' + n + '"'), a.size && (n = (r = a.size.split("x"))[0], (r = r[1]) ? t.push('width="' + n + '" height="' + r + '"') : t.push('width="' + n + '"')), a.class && t.push('class="' + a.class + '"'), a.id && t.push('id="' + a.id + '"'), R(e) || (o = q(p, C(d.getCurrentPath()), e)), 0 < t.length ? '<img src="' + o + '" data-origin="' + e + '" alt="' + i + '" ' + t.join(" ") + " />" : '<img src="' + o + '" data-origin="' + e + '" alt="' + i + '"' + t + ">"
    }), t.list = {
      renderer: e
    }.renderer.list = function (e, n, i) {
      n = n ? "ol" : "ul";
      return "<" + n + " " + [/<li class="task-list-item">/.test(e.split('class="task-list"')[0]) ? 'class="task-list"' : "", i && 1 < i ? 'start="' + i + '"' : ""].join(" ").trim() + ">" + e + "</" + n + ">"
    }, t.listitem = {
      renderer: e
    }.renderer.listitem = function (e) {
      return /^(<input.*type="checkbox"[^>]*>)/.test(e) ? '<li class="task-list-item"><label>' + e + "</label></li>" : "<li>" + e + "</li>"
    }, e.origin = t, e
  }, In.prototype.sidebar = function (e, n) {
    var i = this.toc,
      o = this.router.getCurrentPath(),
      t = "";
    if (e) t = this.compile(e);
    else {
      for (var a = 0; a < i.length; a++)
        if (i[a].ignoreSubHeading) {
          var r = i[a].level;
          i.splice(a, 1);
          for (var c = a; c < i.length && r < i[c].level; c++) i.splice(c, 1) && c-- && a++;
          a--
        } n = this.cacheTree[o] || zn(i, n), t = An(n, "<ul>{inner}</ul>");
      this.cacheTree[o] = n
    }
    return t
  }, In.prototype.subSidebar = function (e) {
    if (e) {
      var n = this.router.getCurrentPath(),
        i = this.cacheTree,
        o = this.toc;
      o[0] && o[0].ignoreAllSubs && o.splice(0), o[0] && 1 === o[0].level && o.shift();
      for (var t = 0; t < o.length; t++) o[t].ignoreSubHeading && o.splice(t, 1) && t--;
      e = i[n] || zn(o, e);
      return i[n] = e, this.toc = [], An(e)
    }
    this.toc = []
  }, In.prototype.header = function (e, n) {
    return this.heading(e, n)
  }, In.prototype.article = function (e) {
    return this.compile(e)
  }, In.prototype.cover = function (e) {
    var n = this.toc.slice(),
      e = this.compile(e);
    return this.toc = n.slice(), e
  };

  function Dn(e) {
    var n = Zn(e);
    return 0 === n ? e : (n = new RegExp("^[ \\t]{" + n + "}", "gm"), e.replace(n, ""))
  }
  var Un, Zn = function (e) {
      e = e.match(/^[ \t]*(?=\S)/gm);
      return e ? e.reduce(function (e, n) {
        return Math.min(e, n.length)
      }, 1 / 0) : 0
    },
    Bn = {};

  function Vn(e, o) {
    var a = e.compiler,
      t = e.raw;
    void 0 === t && (t = "");
    var n = e.fetch,
      e = Bn[t];
    if (e) {
      var i = e.slice();
      return i.links = e.links, o(i)
    }
    var i = a._marked,
      r = i.lexer(t),
      c = [],
      u = i.Lexer.rules.inline.link,
      f = r.links;
    r.forEach(function (e, t) {
      "paragraph" === e.type && (e.text = e.text.replace(new RegExp(u.source, "g"), function (e, n, i, o) {
        o = a.compileEmbed(i, o);
        return o && c.push({
          index: t,
          embed: o
        }), e
      }))
    });
    var p = [];
    ! function (e, a) {
      var n, i = e.embedTokens,
        r = e.compile,
        c = (e.fetch, 0),
        u = 1;
      if (!i.length) return a({});
      for (; n = i[c++];) {
        var o = function (t) {
          return function (e) {
            var n, i, o;
            e && ("markdown" === t.embed.type ? ((i = t.embed.url.split("/")).pop(), i = i.join("/"), e = e.replace(/\[([^[\]]+)\]\(([^)]+)\)/g, function (e) {
              var n = e.indexOf("(");
              return "(." === e.slice(n, n + 2) ? e.substring(0, n) + "(" + window.location.protocol + "//" + window.location.host + i + "/" + e.substring(n + 1, e.length - 1) + ")" : e
            }), !0 === (($docsify.frontMatter || {}).installed || !1) && (e = $docsify.frontMatter.parseMarkdown(e)), n = r.lexer(e)) : "code" === t.embed.type ? (t.embed.fragment && (o = t.embed.fragment, o = new RegExp("(?:###|\\/\\/\\/)\\s*\\[" + o + "\\]([\\s\\S]*)(?:###|\\/\\/\\/)\\s*\\[" + o + "\\]"), e = Dn((e.match(o) || [])[1] || "").trim()), n = r.lexer("```" + t.embed.lang + "\n" + e.replace(/`/g, "@DOCSIFY_QM@") + "\n```\n")) : "mermaid" === t.embed.type ? (n = [{
              type: "html",
              text: '<div class="mermaid">\n' + e + "\n</div>"
            }]).links = {} : (n = [{
              type: "html",
              text: e
            }]).links = {}), a({
              token: t,
              embedToken: n
            }), ++u >= c && a({})
          }
        }(n);
        n.embed.url ? X(n.embed.url).then(o) : o(n.embed.html)
      }
    }({
      compile: i,
      embedTokens: c,
      fetch: n
    }, function (e) {
      var n, i = e.embedToken,
        e = e.token;
      e ? (n = e.index, p.forEach(function (e) {
        n > e.start && (n += e.length)
      }), m(f, i.links), r = r.slice(0, n).concat(i, r.slice(n + 1)), p.push({
        start: n,
        length: i.length - 1
      })) : (Bn[t] = r.concat(), r.links = Bn[t].links = f, o(r))
    })
  }

  function Yn(e, n, i) {
    var o, t, a, r;
    return n = "function" == typeof i ? i(n) : "string" == typeof i ? (a = [], r = 0, (o = i).replace(V, function (n, e, i) {
      a.push(o.substring(r, i - 1)), r = i += n.length + 1, a.push(t && t[n] || function (e) {
        return ("00" + ("string" == typeof Y[n] ? e[Y[n]]() : Y[n](e))).slice(-n.length)
      })
    }), r !== o.length && a.push(o.substring(r)), function (e) {
      for (var n = "", i = 0, o = e || new Date; i < a.length; i++) n += "string" == typeof a[i] ? a[i] : a[i](o);
      return n
    }(new Date(n))) : n, e.replace(/{docsify-updated}/g, n)
  }

  function Gn(e) {
    function n(e) {
      var n = Boolean(e.__vue__ && e.__vue__._isVue),
        e = Boolean(e._vnode && e._vnode.__v_skip);
      return n || e
    }
    var i = this.config,
      o = b(".markdown-section"),
      t = "Vue" in window && window.Vue.version && Number(window.Vue.version.charAt(0));
    if (e = e || "<h1>404 - Not found</h1>", "Vue" in window)
      for (var a = 0, r = k(".markdown-section > *").filter(n); a < r.length; a += 1) {
        var c = r[a];
        2 === t ? c.__vue__.$destroy() : 3 === t && c.__vue_app__.unmount()
      }
    if (this._renderTo(o, e), i.loadSidebar || this._renderSidebar(), (i.executeScript || "Vue" in window && !1 !== i.executeScript) && (!(e = k(".markdown-section>script").filter(function (e) {
        return !/template/.test(e.type)
      })[0]) || (e = e.innerText.trim()) && new Function(e)()), "Vue" in window) {
      var u, f, p = [],
        d = Object.keys(i.vueComponents || {});
      2 === t && d.length && d.forEach(function (e) {
        window.Vue.options.components[e] || window.Vue.component(e, i.vueComponents[e])
      }), !Un && i.vueGlobalOptions && "function" == typeof i.vueGlobalOptions.data && (Un = i.vueGlobalOptions.data()), p.push.apply(p, Object.keys(i.vueMounts || {}).map(function (e) {
        return [b(o, e), i.vueMounts[e]]
      }).filter(function (e) {
        var n = e[0];
        e[1];
        return n
      })), (i.vueGlobalOptions || d.length) && (u = /{{2}[^{}]*}{2}/, f = /<[^>/]+\s([@:]|v-)[\w-:.[\]]+[=>\s]/, p.push.apply(p, k(".markdown-section > *").filter(function (i) {
        return !p.some(function (e) {
          var n = e[0];
          e[1];
          return n === i
        })
      }).filter(function (e) {
        return e.tagName.toLowerCase() in (i.vueComponents || {}) || e.querySelector(d.join(",") || null) || u.test(e.outerHTML) || f.test(e.outerHTML)
      }).map(function (e) {
        var n = m({}, i.vueGlobalOptions || {});
        return Un && (n.data = function () {
          return Un
        }), [e, n]
      })));
      for (var g = 0, s = p; g < s.length; g += 1) {
        var l, v = s[g],
          h = v[0],
          _ = v[1],
          v = "data-isvue";
        h.matches("pre, script") || n(h) || h.querySelector("[" + v + "]") || (h.setAttribute(v, ""), 2 === t ? (_.el = void 0, new window.Vue(_).$mount(h)) : 3 === t && (l = window.Vue.createApp(_), d.forEach(function (e) {
          var n = i.vueComponents[e];
          l.component(e, n)
        }), l.mount(h)))
      }
    }
  }

  function Wn(n, i, o, t, a, e) {
    n = e ? n : n.replace(/\/$/, ""), (n = C(n)) && X(a.router.getFile(n + o) + i, !1, a.config.requestHeaders).then(t, function (e) {
      return Wn(n, i, o, t, a)
    })
  }

  function Xn() {
    var n = function () {
      return null
    };
    return [function (e) {
      n(e)
    }, function (e) {
      n = e
    }]
  }
  Me = Object.freeze({
    __proto__: null,
    cached: c,
    hyphenate: a,
    hasOwn: u,
    merge: m,
    isPrimitive: f,
    noop: d,
    isFn: o,
    isExternal: g,
    inBrowser: !0,
    isMobile: s,
    supportsPushState: t,
    parseQuery: F,
    stringifyQuery: E,
    isAbsolutePath: R,
    removeParams: T,
    getParentPath: C,
    cleanPath: j,
    resolvePath: L,
    getPath: q,
    replaceSlug: P
  });
  var Qn, Jn = function (e) {
    function n() {
      e.call(this), this.config = ue(this), this.initLifecycle(), this.initPlugin(), this.callHook("init"), this.initRouter(), this.initRender(), this.initEvent(), this.initFetch(), this.callHook("mounted")
    }
    return e && (n.__proto__ = e), ((n.prototype = Object.create(e && e.prototype)).constructor = n).prototype.initPlugin = function () {
      var n = this;
      [].concat(this.config.plugins).forEach(function (e) {
        try {
          o(e) && e(n._lifecycle, n)
        } catch (e) {
          if (!n.config.catchPluginErrors) throw e;
          console.error("Docsify plugin error", e)
        }
      })
    }, n
  }((we = Object, function (e) {
    function n() {
      e.apply(this, arguments)
    }
    return e && (n.__proto__ = e), ((n.prototype = Object.create(e && e.prototype)).constructor = n).prototype._loadSideAndNav = function (e, n, i, o) {
      var t = this;
      return function () {
        if (!i) return o();
        Wn(e, n, i, function (e) {
          t._renderSidebar(e), o()
        }, t, !0)
      }
    }, n.prototype._fetch = function (i) {
      var o = this;
      void 0 === i && (i = d);
      var t, e, n, a, r, c, u, f = this.route.query,
        p = this.route.path;
      g(p) ? (history.replaceState(null, "", "#"), this.router.normalize()) : (t = E(f, ["id"]), f = (e = this.config).loadNavbar, n = e.requestHeaders, a = e.loadSidebar, r = this.router.getFile(p), this.isRemoteUrl = g(r), this.isHTML = /\.html$/g.test(r), c = function (e, n) {
        o._renderMain(e, n, o._loadSideAndNav(p, t, a, i))
      }, u = function (e) {
        o._fetchFallbackPage(p, t, i) || o._fetch404(r, t, i)
      }, this.isRemoteUrl ? Kn(r + t, 0, n).then(c, u) : this.matchVirtualRoute(p).then(function (e) {
        "string" == typeof e ? c(e) : Kn(r + t, 0, n).then(c, u)
      }), f && Wn(p, t, f, function (e) {
        return o._renderNav(e)
      }, this, !0))
    }, n.prototype._fetchCover = function () {
      var n = this,
        e = this.config,
        i = e.coverpage,
        o = e.requestHeaders,
        t = this.route.query,
        a = C(this.route.path);
      if (i) {
        var r = null,
          e = this.route.path;
        "string" == typeof i ? "/" === e && (r = i) : r = Array.isArray(i) ? -1 < i.indexOf(e) && "_coverpage" : !0 === (e = i[e]) ? "_coverpage" : e;
        var c = Boolean(r) && this.config.onlyCover;
        return r ? (r = this.router.getFile(a + r), this.coverIsHTML = /\.html$/g.test(r), X(r + E(t, ["id"]), !1, o).then(function (e) {
          return n._renderCover(e, c)
        })) : this._renderCover(null, c), c
      }
    }, n.prototype.$fetch = function (e, n) {
      var i = this;
      void 0 === e && (e = d), void 0 === n && (n = this.$resetEvents.bind(this));

      function o() {
        i.callHook("doneEach"), e()
      }
      this._fetchCover() ? o() : this._fetch(function () {
        n(), o()
      })
    }, n.prototype._fetchFallbackPage = function (i, o, t) {
      var a = this;
      void 0 === t && (t = d);
      var e = this.config,
        n = e.requestHeaders,
        r = e.fallbackLanguages,
        c = e.loadSidebar;
      if (!r) return !1;
      e = i.split("/")[1];
      if (-1 === r.indexOf(e)) return !1;
      e = this.router.getFile(i.replace(new RegExp("^/" + e), ""));
      return Kn(e + o, 0, n).then(function (e, n) {
        return a._renderMain(e, n, a._loadSideAndNav(i, o, c, t))
      }, function () {
        return a._fetch404(i, o, t)
      }), !0
    }, n.prototype._fetch404 = function (e, n, i) {
      var o = this,
        t = this.config,
        a = t.loadSidebar,
        r = t.requestHeaders,
        t = t.notFoundPage,
        c = this._loadSideAndNav(e, n, a, i = void 0 === i ? d : i);
      if (t) {
        e = function (n, e) {
          var i, o, t = e.notFoundPage,
            a = "_404" + (e.ext || ".md");
          switch (typeof t) {
            case "boolean":
              o = a;
              break;
            case "string":
              o = t;
              break;
            case "object":
              o = (i = Object.keys(t).sort(function (e, n) {
                return n.length - e.length
              }).filter(function (e) {
                return n.match(new RegExp("^" + e))
              })[0]) && t[i] || a
          }
          return o
        }(e, this.config);
        return Kn(this.router.getFile(e), 0, r).then(function (e, n) {
          return o._renderMain(e, n, c)
        }, function () {
          return o._renderMain(null, {}, c)
        }), !0
      }
      return this._renderMain(null, {}, c), !1
    }, n.prototype.initFetch = function () {
      var e, n = this,
        i = this.config.loadSidebar;
      this.rendered ? (e = ee(this.router, ".sidebar-nav", !0, !0), i && e && (e.parentNode.innerHTML += window.__SUB_SIDEBAR__), this._bindEventOnRendered(e), this.$resetEvents(), this.callHook("doneEach"), this.callHook("ready")) : this.$fetch(function (e) {
        return n.callHook("ready")
      })
    }, n
  }(function (e) {
    function n() {
      e.apply(this, arguments)
    }
    return e && (n.__proto__ = e), ((n.prototype = Object.create(e && e.prototype)).constructor = n).prototype.$resetEvents = function (e) {
      var n = this,
        i = this.config.auto2top;
      "history" !== e && (n.route.query.id && he(n.route.path, n.route.query.id), "navigate" === e && i && (i = i, _e.scrollTop = !0 === (i = void 0 === i ? 0 : i) ? 0 : Number(i))), this.config.loadNavbar && ee(this.router, "nav")
    }, n.prototype.initEvent = function () {
      function n(e) {
        return h.classList.toggle("close")
      }
      var e;
      e = "button.sidebar-toggle", this.router, null != (e = l(e)) && (p(e, "click", function (e) {
        e.stopPropagation(), n()
      }), s && p(h, "click", function (e) {
        return h.classList.contains("close") && n()
      })), e = ".sidebar", this.router, null != (e = l(e)) && p(e, "click", function (e) {
        e = e.target;
        "A" === e.nodeName && e.nextSibling && e.nextSibling.classList && e.nextSibling.classList.contains("app-sub-sidebar") && S(e.parentNode, "collapse")
      }), this.config.coverpage ? s || p("scroll", K) : h.classList.add("sticky")
    }, n
  }(function (e) {
    function n() {
      e.apply(this, arguments)
    }
    return e && (n.__proto__ = e), ((n.prototype = Object.create(e && e.prototype)).constructor = n).prototype._renderTo = function (e, n, i) {
      e = l(e);
      e && (e[i ? "outerHTML" : "innerHTML"] = n)
    }, n.prototype._renderSidebar = function (e) {
      var n = this.config,
        i = n.maxLevel,
        o = n.subMaxLevel,
        t = n.loadSidebar;
      if (n.hideSidebar) return [document.querySelector("aside.sidebar"), document.querySelector("button.sidebar-toggle")].filter(function (e) {
        return !!e
      }).forEach(function (e) {
        return e.parentNode.removeChild(e)
      }), document.querySelector("section.content").style.right = "unset", document.querySelector("section.content").style.left = "unset", document.querySelector("section.content").style.position = "relative", document.querySelector("section.content").style.width = "100%", null;
      this._renderTo(".sidebar-nav", this.compiler.sidebar(e, i));
      i = ee(this.router, ".sidebar-nav", !0, !0);
      t && i ? i.parentNode.innerHTML += this.compiler.subSidebar(o) || "" : this.compiler.subSidebar(), this._bindEventOnRendered(i)
    }, n.prototype._bindEventOnRendered = function (e) {
      var n, i = this.config.autoHeader;
      ! function (e) {
        var n = b(".cover.show");
        se = n ? n.offsetHeight : 0;
        for (var i, n = l(".sidebar"), o = [], t = 0, a = (o = null != n ? k(n, "li") : o).length; t < a; t += 1) {
          var r, c, u = o[t],
            f = u.querySelector("a");
          f && ("/" !== (r = f.getAttribute("href")) && (f = (c = e.parse(r)).query.id, c = c.path, f && (r = ve(c, f))), r && (fe[decodeURIComponent(r)] = u))
        }
        s || (i = T(e.getCurrentPath()), x("scroll", function () {
          return le(i)
        }), p("scroll", function () {
          return le(i)
        }), p(n, "mouseover", function () {
          pe = !0
        }), p(n, "mouseleave", function () {
          pe = !1
        }))
      }(this.router), i && e && ((i = (n = l("#main")).children[0]) && "H1" !== i.tagName && y(n, w("div", this.compiler.header(e.innerText, 1)).children[0]))
    }, n.prototype._renderNav = function (e) {
      e && this._renderTo("nav", this.compiler.compile(e)), this.config.loadNavbar && ee(this.router, "nav")
    }, n.prototype._renderMain = function (o, t, a) {
      var r = this;
      if (void 0 === t && (t = {}), !o) return Gn.call(this, o);
      this.callHook("beforeEach", o, function (e) {
        function n() {
          t.updatedAt && (i = Yn(i, t.updatedAt, r.config.formatUpdated)), r.callHook("afterEach", i, function (e) {
            Gn.call(r, e), a()
          })
        }
        var i;
        r.isHTML ? (i = r.result = o, n()) : Vn({
          compiler: r.compiler,
          raw: e
        }, function (e) {
          i = r.compiler.compile(e), n()
        })
      })
    }, n.prototype._renderCover = function (e, n) {
      var i, o = l(".cover");
      S(l("main"), n ? "add" : "remove", "hidden"), e ? (S(o, "add", "show"), (n = (i = this.coverIsHTML ? e : this.compiler.cover(e)).trim().match('<p><img.*?data-origin="(.*?)"[^a]+alt="(.*?)">([^<]*?)</p>$')) && ("color" === n[2] ? o.style.background = n[1] + (n[3] || "") : (e = n[1], S(o, "add", "has-mask"), R(n[1]) || (e = q(this.router.getBasePath(), n[1])), o.style.backgroundImage = "url(" + e + ")", o.style.backgroundSize = "cover", o.style.backgroundPosition = "center center"), i = i.replace(n[0], "")), this._renderTo(".cover-main", i), K()) : S(o, "remove", "show")
    }, n.prototype._updateRender = function () {
      var e, n, i, o;
      e = this, n = l(".app-name-link"), i = e.config.nameLink, o = e.route.path, n && (f(e.config.nameLink) ? n.setAttribute("href", i) : "object" == typeof i && (e = Object.keys(i).filter(function (e) {
        return -1 < o.indexOf(e)
      })[0], n.setAttribute("href", i[e])))
    }, n.prototype.initRender = function () {
      var e = this.config;
      this.compiler = new In(e, this.router), window.__current_docsify_compiler__ = this.compiler;
      var n, i, o, t, a, r = e.el || "#app",
        c = b("nav") || w("nav"),
        u = b(r),
        f = "",
        p = h;
      u ? (e.repo && (f += (t = e.repo, r = e.cornerExternalLinkTarget, t ? '<a href="' + (t = (t = !/\/\//.test(t) ? "https://github.com/" + t : t).replace(/^git\+/, "")) + '" target="' + (r = r || "_blank") + '" class="github-corner" aria-label="View source on Github"><svg viewBox="0 0 250 250" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a>' : "")), e.coverpage && (f += (o = ", 100%, 85%", '<section class="cover show" style="background: ' + ("linear-gradient(to left bottom, hsl(" + Math.floor(255 * Math.random()) + o + ") 0%,hsl(" + Math.floor(255 * Math.random()) + o + ") 100%)") + '"><div class="mask"></div><div class="cover-main">\x3c!--cover--\x3e</div></section>')), e.logo && (o = /^data:image/.test(e.logo), n = /(?:http[s]?:)?\/\//.test(e.logo), i = /^\./.test(e.logo), o || n || i || (e.logo = q(this.router.getBasePath(), e.logo))), f += (i = (n = e).name || "", "<main>" + ('<button class="sidebar-toggle" aria-label="Menu"><div class="sidebar-toggle-button"><span></span><span></span><span></span></div></button><aside class="sidebar">' + (n.name ? '<h1 class="app-name"><a class="app-name-link" data-nosearch>' + (n.logo ? '<img alt="' + i + '" src=' + n.logo + ">" : i) + "</a></h1>" : "") + '<div class="sidebar-nav">\x3c!--sidebar--\x3e</div></aside>') + '<section class="content"><article class="markdown-section" id="main">\x3c!--main--\x3e</article></section></main>'), this._renderTo(u, f, !0)) : this.rendered = !0, e.mergeNavbar && s ? p = b(".sidebar") : (c.classList.add("app-nav"), e.repo || c.classList.add("no-badge")), e.loadNavbar && y(p, c), e.themeColor && (v.head.appendChild(w("div", "<style>:root{--theme-color: " + e.themeColor + ";}</style>").firstElementChild), a = e.themeColor, window.CSS && window.CSS.supports && window.CSS.supports("(--v:red)") || (e = k("style:not(.inserted),link"), [].forEach.call(e, function (e) {
        "STYLE" === e.nodeName ? Q(e, a) : "LINK" === e.nodeName && (e = e.getAttribute("href"), /\.css$/.test(e) && X(e).then(function (e) {
          e = w("style", e);
          _.appendChild(e), Q(e, a)
        }))
      }))), this._updateRender(), S(h, "ready")
    }, n
  }(function (e) {
    function n() {
      e.apply(this, arguments)
    }
    return e && (n.__proto__ = e), ((n.prototype = Object.create(e && e.prototype)).constructor = n).prototype.routes = function () {
      return this.config.routes || {}
    }, n.prototype.matchVirtualRoute = function (t) {
      var a = this.routes(),
        r = Object.keys(a),
        c = function () {
          return null
        };

      function u() {
        var e = r.shift();
        if (!e) return c(null);
        var n = A(o = (i = "^", 0 === (o = e).indexOf(i) ? o : "^" + o), "$") ? o : o + "$",
          i = t.match(n);
        if (!i) return u();
        var o = a[e];
        if ("string" == typeof o) return c(o);
        if ("function" != typeof o) return u();
        n = o, e = Xn(), o = e[0];
        return (0, e[1])(function (e) {
          return "string" == typeof e ? c(e) : !1 === e ? c(null) : u()
        }), n.length <= 2 ? o(n(t, i)) : n(t, i, o)
      }
      return {
        then: function (e) {
          c = e, u()
        }
      }
    }, n
  }(function (i) {
    function e() {
      for (var e = [], n = arguments.length; n--;) e[n] = arguments[n];
      i.apply(this, e), this.route = {}
    }
    return i && (e.__proto__ = i), ((e.prototype = Object.create(i && i.prototype)).constructor = e).prototype.updateRender = function () {
      this.router.normalize(), this.route = this.router.parse(), h.setAttribute("data-page", this.route.file)
    }, e.prototype.initRouter = function () {
      var n = this,
        e = this.config,
        e = new("history" === (e.routerMode || "hash") && t ? D : H)(e);
      this.router = e, this.updateRender(), U = this.route, e.onchange(function (e) {
        n.updateRender(), n._updateRender(), U.path !== n.route.path ? (n.$fetch(d, n.$resetEvents.bind(n, e.source)), U = n.route) : n.$resetEvents(e.source)
      })
    }, e
  }(function (e) {
    function n() {
      e.apply(this, arguments)
    }
    return e && (n.__proto__ = e), ((n.prototype = Object.create(e && e.prototype)).constructor = n).prototype.initLifecycle = function () {
      var i = this;
      this._hooks = {}, this._lifecycle = {}, ["init", "mounted", "beforeEach", "afterEach", "doneEach", "ready"].forEach(function (e) {
        var n = i._hooks[e] = [];
        i._lifecycle[e] = function (e) {
          return n.push(e)
        }
      })
    }, n.prototype.callHook = function (e, t, a) {
      void 0 === a && (a = d);
      var r = this._hooks[e],
        c = this.config.catchPluginErrors,
        u = function (n) {
          var e = r[n];
          if (n >= r.length) a(t);
          else if ("function" == typeof e) {
            var i = "Docsify plugin error";
            if (2 === e.length) try {
              e(t, function (e) {
                t = e, u(n + 1)
              })
            } catch (e) {
              if (!c) throw e;
              console.error(i, e), u(n + 1)
            } else try {
              var o = e(t);
              t = void 0 === o ? t : o, u(n + 1)
            } catch (e) {
              if (!c) throw e;
              console.error(i, e), u(n + 1)
            }
          } else u(n + 1)
        };
      u(0)
    }, n
  }(we))))))));

  function Kn(e, n, i) {
    return Qn && Qn.abort && Qn.abort(), Qn = X(e, !0, i)
  }
  window.Docsify = {
    util: Me,
    dom: n,
    get: X,
    slugify: Tn,
    version: "4.13.1"
  }, window.DocsifyCompiler = In, window.marked = Sn, window.Prism = Pn, e(function (e) {
    return new Jn
  })
}();